Universiti Putra Malaysia Search API

Search with selectable output format.

Operations 2

GET /cgi/search/simple Simple search with a selectable output representation #
GET /cgi/opensearchdescription Get the repository's OpenSearch 1.1 description document #

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/upm-search-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

upm-search-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: UPM PSASIR — EPrints REST, export and OpenSearch interfaces…
  version: 3.3.16
  summary: Read-only machine-readable item, search and export interfaces of the UPM Institutional Repository.
  description: 'Beyond OAI-PMH, PSASIR (Universiti Putra Malaysia Institutional Repository, EPrints 3.3.16) serves three further unauthenticated machine-readable interfaces, all observed live on 2026-09-01: an EPrints REST dataset browser at /rest/ exposing the eprint, user and subject datasets with per-item XML at /rest/eprint/{id}.xml; a per-item export interface at /cgi/export/eprint/{id}/{format}/{filename} that renders a single record into any installed export plugin, including JSON; and a search…'
  contact:
    name: PSASIR repository administrator
    email: muizzudin@upm.edu.my
    url: http://psasir.upm.edu.my/information.html
  x-operator: institution
  x-operator-basis: Host is under upm.edu.my and resolves into UPMNET (119.40.117.86, org-name UNIVERSITI PUTRA MALAYSIA). Self-hosted open-source EPrints, not a hosted vendor tenancy.
  x-provenance:
    generated: '2026-09-01'
    method: derived
    source: Live probes on 2026-09-01 of http://psasir.upm.edu.my/rest/ (200), /rest/eprint/ (200, 9.9 MB index), /rest/eprint/813.xml (200), /cgi/export/eprint/813/JSON/psasir-eprint-813.js (200, application/json), /cgi/search?q=rice&output=JSON (200, streaming) and /cgi/opensearchdescription (200, application/opensearchdescription+xml), which is the source of the enumerated output formats.
servers:
- url: http://psasir.upm.edu.my
  description: PSASIR (HTTP only — the host does not serve HTTPS)
tags:
- name: Search
  description: Search with selectable output format.
paths:
  /cgi/search/simple:
    get:
      tags:
      - Search
      operationId: searchSimple
      summary: Simple search with a selectable output representation
      description: Query the repository and choose the serialization with `output`. The available values are those the repository advertises in its own OpenSearch description document.
      parameters:
      - name: q
        in: query
        required: true
        description: Free-text query.
        schema:
          type: string
          examples:
          - rice
      - name: search_offset
        in: query
        required: false
        description: Zero-based result offset (OpenSearch indexOffset is 0).
        schema:
          type: integer
          default: 0
      - name: output
        in: query
        required: false
        description: Output representation.
        schema:
          type: string
          enum:
          - Atom
          - BibTeX
          - CSV
          - ContextObject
          - DC
          - EndNote
          - HTML
          - Ids
          - JSON
          - METS
          - RDFN3
          - RDFNT
          - RDFXML
          - RIS
          - RSS
          - RSS2
          - Refer
          - Text
          - XML
          default: HTML
      responses:
        '200':
          description: Search results in the requested representation. Responses are not paged by default and can be very large; an `output=JSON` response was still streaming past 12 MB at 25 seconds on 2026-09-01.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: ../json-schema/upm-eprints-record-schema.json
            application/atom+xml:
              schema:
                type: string
  /cgi/opensearchdescription:
    get:
      tags:
      - Search
      operationId: getOpenSearchDescription
      summary: Get the repository's OpenSearch 1.1 description document
      description: The repository's own machine-readable search descriptor. ShortName "Universiti Putra", Contact muizzudin@upm.edu.my, twenty `Url` templates.
      responses:
        '200':
          description: OpenSearch 1.1 description document.
          content:
            application/opensearchdescription+xml:
              schema:
                type: string