APIs and protocols supported by Koha

From Koha Wiki

Jump to: navigation, search
Home > Documentation

This page covers APIs and protocols where Koha acts as the server. We could also do a page for APIs and protocols where it acts as the client, e.g. Z39.50 for copy cataloging and all the stuff related to "enhanced content".

Contents

RESTful web service calls

Koha has a REST API, but there are inconsistencies that have led to a wish to create a new and hopefully better API from scratch. See New REST API RFC for details.

Koha /svc/ HTTP API

Reports web service

Any report can be turned into a "public report", with data available in JSON format.

A public report is accessible via a URL that looks like this: http://MYOPAC/cgi-bin/koha/svc/report?id=REPORTID

Patrons, circulation etc

SIP2

ILS-DI

ILS-DI is self-documenting, so in an installation where it is enabled, you can get some information about it at the URL:

http://koha-opac.example.org/cgi-bin/koha/ilsdi.pl

Because ILS-DI gives access to all your data (items, patrons...), it should be restricted by allowing IP in the admin interface and/or by disabling services via the server.

For Apache, these rules can be added to restrict public access only to the first and second levels of ILS-DI:

 <IfModule mod_rewrite.c>
   # Rewrite Rules
   RewriteEngine On
   # Restricted ILS-DI Access
   RewriteCond %{QUERY_STRING} !(^$|service=(Describe|GetAvailability|GetRecords|GetAuthorityRecords))
   RewriteRule ^/cgi-bin/koha/ilsdi\.pl$ - [R=403,L]
 </IfModule>

Because an IP can be easily spoofed, the second way is recommanded.

Bibliographic data

Z39.50

Support for Z39.50 is provided by Zebra.

Server

Koha can act as a Z39.50 server

Client

Koha can also be used as a client, to retrieve both bibliographic and authority records from other Z39.50 servers. (This is often referred to as copy cataloguing).

SRU

OAI-PMH

Data Provider

Koha can be set up as a Data Provider (server) by enabling the OAI-PMH system preference.

Service Provider

Koha can currently not act as a Service Provider (client), but Bug 10662 - Build OAI-PMH Harvesting Client aims to change this, in order to make it possible to have Koha ingest/update records via OAI-PMH.

unAPI

OpenSearch

RSS for search results

Authentication

LDAP

See the perldoc for C4::Auth_with_ldap

CAS

Mozilla Persona

Shibboleth

See Bug 8446 for current progress

See also

Personal tools