Taylor's University items API

Catalog items

Documentation

Specifications

Schemas & Data

Other Resources

OpenAPI Specification

taylors-items-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Taylor's Library Koha REST checkouts items API
  description: OpenAPI 3.0 description of the Taylor's University Library catalog REST API, served by the open-source Koha integrated library system under /api/v1. This document was converted to OpenAPI 3.0 from the live, publicly retrievable Swagger 2.0 definition at https://librarycatalogue.taylors.edu.my/api/v1/. Only resources whose object schemas were confirmed present in the live definition (patron, checkout, hold, item, library, item_type) are described here. Collection and resource endpoints require authentication (HTTP 401 is returned to anonymous clients); the specification document itself is public.
  version: v1
  contact:
    name: Taylor's University Library
    url: https://librarycatalogue.taylors.edu.my/
servers:
- url: https://librarycatalogue.taylors.edu.my/api/v1
  description: Taylor's Library Koha REST API (basePath /api/v1)
security:
- basicAuth: []
- oauth2ClientCredentials: []
tags:
- name: items
  description: Catalog items
paths:
  /items:
    get:
      tags:
      - items
      operationId: listItems
      summary: List items
      responses:
        '200':
          description: A list of items
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/item'
        '401':
          $ref: '#/components/responses/Unauthorized'
  /items/{item_id}:
    parameters:
    - name: item_id
      in: path
      required: true
      schema:
        type: integer
    get:
      tags:
      - items
      operationId: getItem
      summary: Get item
      responses:
        '200':
          description: An item
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/item'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
components:
  responses:
    Unauthorized:
      description: Authentication required
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/error'
    NotFound:
      description: Resource not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/error'
  schemas:
    item:
      type: object
      additionalProperties: false
      required:
      - biblio_id
      properties:
        item_id:
          type: integer
          description: Internal item identifier
        biblio_id:
          type: integer
          description: Internal identifier for the parent bibliographic record
        external_id:
          type: string
          nullable: true
          maxLength: 20
          description: The item's barcode
        callnumber:
          type: string
          nullable: true
          maxLength: 255
          description: Call number for this item
        home_library_id:
          type: string
          nullable: true
          maxLength: 10
          description: Internal library id for the library the item belongs to
        holding_library_id:
          type: string
          nullable: true
          maxLength: 10
          description: Library that is currently in possession of the item
        item_type_id:
          type: string
          nullable: true
          maxLength: 10
          description: Itemtype defining the type for this item
        collection_code:
          type: string
          nullable: true
          maxLength: 80
          description: Authorized value for the collection code associated with this item
        location:
          type: string
          nullable: true
          maxLength: 80
          description: Authorized value for the shelving location for this item
        permanent_location:
          type: string
          nullable: true
          maxLength: 80
          description: The permanent shelving location
        copy_number:
          type: string
          nullable: true
          maxLength: 32
          description: Copy number
        inventory_number:
          type: string
          nullable: true
          maxLength: 80
          description: Inventory number
        acquisition_date:
          type: string
          format: date
          nullable: true
          description: The date the item was acquired
        replacement_price:
          type: number
          nullable: true
          description: Cost the library charges to replace the item
        purchase_price:
          type: number
          nullable: true
          description: Purchase price
        public_notes:
          type: string
          nullable: true
          description: Public notes on this item
        internal_notes:
          type: string
          nullable: true
          description: Non-public notes on this item
        checkouts_count:
          type: integer
          nullable: true
          description: Number of times this item has been checked out
        holds_count:
          type: integer
          nullable: true
          description: Number of times this item has been placed on hold
        renewals_count:
          type: integer
          nullable: true
          description: Number of times this item has been renewed
        not_for_loan_status:
          type: integer
          description: Authorized value defining why this item is not for loan
        last_seen_date:
          type: string
          format: date-time
          nullable: true
          description: The date the item barcode was last scanned
        uri:
          type: string
          nullable: true
          description: URL for the item
        timestamp:
          type: string
          format: date-time
          description: Date and time this item was last altered
    error:
      type: object
      properties:
        error:
          type: string
          description: Error message
        error_code:
          type: string
          description: Error code
      required:
      - error
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
    oauth2ClientCredentials:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: https://librarycatalogue.taylors.edu.my/api/v1/oauth/token
          scopes: {}