IRIS Repository Discover API (DSpace Discovery)

DSpace Discovery search across everything indexed in IRIS. Confirmed anonymous 200 on 2026-09-01, reporting a last page of 253,798 at size=1, i.e. 253,799 indexed objects. This matters because /core/items and /core/bitstreams both answer 401 to an anonymous client, so Discovery is the only callable route to item-level metadata over REST.

Operations 1

GET /discover/search/objects Search indexed objects #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/university-of-lausanne-discover-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

university-of-lausanne-discover-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: IRIS Repository (DSpace REST API) Discover API
  description: Public DSpace 7 REST/HATEOAS API (IRIS version 1.3.13) serving the IRIS institutional research repository at the University of Lausanne (UNIL). Exposes communities, collections, items, bundles and bitstreams via a HAL-based hypermedia API. Anonymous read access is available for public content; some endpoints (e.g. /core/items listing) require authentication. This specification was reconstructed from the live API root at https://api.unil.ch/iris/server/api and confirmed against live responses; only confirmed public read endpoints and observed object shapes are included.
  version: 1.3.13
  contact:
    name: University of Lausanne - IRIS
    url: https://iris.unil.ch
  x-provenance:
    generated: '2026-09-01'
    method: probed
    source: Reconstructed by API Evangelist from live responses of https://api.unil.ch/iris/server/api on 2026-06-03 and re-probed 2026-09-01 (root, /core/communities, /core/collections, /discover/search/objects, /core/items 401, /core/bitstreams 401). Not published by the University of Lausanne. The software is DSpace-CRIS/IRIS; the deployment, host and content are UNIL's.
servers:
- url: https://api.unil.ch/iris/server/api
  description: Production DSpace REST server
tags:
- name: Discover
paths:
  /discover/search/objects:
    get:
      operationId: searchObjects
      summary: Search indexed objects
      description: DSpace Discovery search across everything indexed in IRIS. Confirmed anonymous read on 2026-09-01. Note that /core/items and /core/bitstreams both answer 401 to an anonymous client, so Discovery is the callable route to item-level metadata.
      parameters:
      - name: query
        in: query
        required: false
        description: Free-text Discovery query.
        schema:
          type: string
      - name: scope
        in: query
        required: false
        description: UUID of a community or collection to scope the search to.
        schema:
          type: string
          format: uuid
      - name: dsoType
        in: query
        required: false
        description: Restrict to an object type (item, collection, community).
        schema:
          type: string
      - $ref: '#/components/parameters/page'
      - $ref: '#/components/parameters/size'
      responses:
        '200':
          description: A Discovery search response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SearchResult'
      tags:
      - Discover
components:
  parameters:
    page:
      name: page
      in: query
      required: false
      description: Zero-based page index.
      schema:
        type: integer
        default: 0
    size:
      name: size
      in: query
      required: false
      description: Number of elements per page.
      schema:
        type: integer
        default: 20
  schemas:
    SearchResult:
      type: object
      description: A DSpace Discovery search response. On 2026-09-01 the unscoped index reported 253,799 objects.
      properties:
        id:
          type: string
          nullable: true
        scope:
          type: string
          nullable: true
        query:
          type: string
          nullable: true
        sort:
          type: object
          nullable: true
          additionalProperties: true
        configuration:
          type: string
          nullable: true
        type:
          type: string
          example: discover
        uniqueType:
          type: string
          example: discover.discover
        _embedded:
          type: object
          description: Carries searchResult, itself a HAL page of hit objects.
          additionalProperties: true
        _links:
          type: object
          additionalProperties: true