वेब सेवाएँ

कोहा कई एपीआई प्रदान करता है जो इसके डेटा और कार्यों तक पहुंच की इजाजत देता है।

OAI-PMH

मेटाडाटा कटाई के लिए ओपन अभिलेखागार पहल प्रोटोकॉल (OAI-PMH) के लिए 'प्रतिभागियों' के दो समूह हैं: डेटा प्रदाता और सेवा प्रदाता। डेटा प्रदाता (खुला अभिलेखागार, खजाने) मेटाडाटा के लिए स्वतंत्र पहुँच प्रदान करते हैं, और हो सकता है, लेकिन जरूरी नहीं है, पूर्ण ग्रंथों या अन्य संसाधनों के लिए स्वतंत्र पहुँच प्रदान करते हैं। OAI-PMH को लागू करने के लिए डेटा प्रदाताओं के लिए, कम बाधा समाधान के लिए एक आसान प्रदान करता है। सेवा प्रदाता फसल और दुकान मेटाडाटा के लिए डेटा प्रदाताओं की OAI इंटरफेस का उपयोग करें। नोट: यह मतलब है कि डेटा प्रदाता के लिए कोई लाइव खोज अनुरोधों देखते हैं कि; बल्कि, सेवाओं OAI-PMH के माध्यम से काटा डेटा के आधार पर कर रहे हैं.

वर्तमान में कोहा केवल डेटा प्रदाता के रूप में कार्य कर सकता है। यह अन्य भंडारों से फसल नहीं कर सकता है। अन्य भंडारों से कोहा फसल होने का सबसे बड़ा ठोकर ब्लॉक यह है कि एमएआरसी एकमात्र मेटाडाटा प्रारूप है जो कोहा इंडेक्स मूल रूप से है। OAI-PMH कैसे काम करता है के आरेखों के लिए http://www.oaforum.org/tutorial/english/page3.htm पर जाएं।

डिफ़ॉल्ट रूप से कोहा में ओएआई-पीएमएच परिणाम सेट में आइटम जानकारी शामिल नहीं होगी, लेकिन इन्हें शामिल कॉन्फ़िगरेशन फ़ाइल में include_items विकल्प का उपयोग करके जोड़ा जा सकता है OAI-PMH:ConfFile.

ओएआई-पीएमएच के बारे में और जानें: http://www.openarchives.org/pmh/

कोहा में ओएआई-पीएमएच को सक्षम करने के लिए इसे संपादित करें :ref:`ओएआई-पीएमएच' वरीयता। एक बार सक्षम होने पर आप अपनी फ़ाइल देखने के लिए http: //YOURKOHACATALOG/cgi-bin/koha/oai.pl पर जा सकते हैं।

नमूना ओएआई Conf फ़ाइल

format:
  vs:
    metadataPrefix: vs
    metadataNamespace: http://veryspecial.tamil.fr/vs/format-pivot/1.1/vs
    schema: http://veryspecial.tamil.fr/vs/format-pivot/1.1/vs.xsd
    xsl_file: /usr/local/koha/xslt/vs.xsl
  marcxml:
     metadataPrefix: marxml
     metadataNamespace: http://www.loc.gov/MARC21/slim http://www.loc.gov/standards/marcxml/schema/MARC21slim
     schema: http://www.loc.gov/MARC21/slim http://www.loc.gov/standards/marcxml/schema/MARC21slim.xsd
     include_items: 1
  oai_dc:
     metadataPrefix: oai_dc
     metadataNamespace: http://www.openarchives.org/OAI/2.0/oai_dc/
     schema: http://www.openarchives.org/OAI/2.0/oai_dc.xsd
     xsl_file: /usr/local/koha/koha-tmpl/intranet-tmpl/xslt/UNIMARCslim2OAIDC.xsl

एसआरयू सर्वर

कोहा यूआरएल (एसआरयू) प्रोटोकॉल के माध्यम से खोज / पुनर्प्राप्ति लागू करता है। प्रोटोकॉल के बारे में अधिक जानकारी http://www.loc.gov/standards/sru/ पर मिल सकती है। लागू संस्करण संस्करण 1.1 है।

योजनाएँ

यदि आप किसी दिए गए सर्वर पर एसआरयू के कार्यान्वयन के बारे में जानकारी चाहते हैं, तो आपको बिना किसी पैरामीटर के सर्वर के अनुरोध का उपयोग करके स्पष्टीकरण फ़ाइल तक पहुंच प्राप्त करनी चाहिए। Http://myserver.com:9999/biblios/ की तरह। सर्वर से प्रतिक्रिया एक एक्सएमएल फ़ाइल है जो निम्न की तरह दिखनी चाहिए और आपको एसआरयू सर्वर की डिफ़ॉल्ट सेटिंग्स के बारे में जानकारी देगी।

       <zs:explainResponse>
            <zs:version>1.1</zs:version>
            <zs:record>
                 <zs:recordSchema>http://explain.z3950.org/dtd/2.0/</zs:recordSchema>
                 <zs:recordPacking>xml</zs:recordPacking>
                 <zs:recordData>
                 <explain xml:base="zebradb/explain-biblios.xml">
                 <!--
                 try stylesheet url: http://./?stylesheet=docpath/sru2.xsl
                 -->
            <serverInfo protocol="SRW/SRU/Z39.50">
                 <host>biblibre</host>
                 <port>9999</port>
                 <database>biblios</database>
            </serverInfo>
            <databaseInfo>
                 <title lang="en" primary="true">Koha 3 Bibliographic SRU/SRW/Z39.50 server</title>
                 <description lang="en" primary="true">Koha 3 Bibliographic Server</description>
                 <links>
                      <sru>http://biblibre:9999</sru>
                 </links>
            </databaseInfo>
            <indexInfo>
                 <set name="cql" identifier="info:srw/cql-context-set/1/cql-v1.1">
                      <title>CQL Standard Set</title>
                 </set>
                 <index search="true" scan="true" sort="false">
                 <title lang="en">CQL Server Choice</title>
                 <map>
                      <name set="cql">serverChoice</name>
                 </map>
            <map>
               <attr type="1" set="bib1">text</attr>
               </map>
          </index>
      <index search="true" scan="true" sort="false">
         <title lang="en">CQL All</title>
             <map>
<name set="cql">all</name>
</map>
<map>
<attr type="1" set="bib1">text</attr>
</map>
</index>
<!-- Record ID index -->
<index search="true" scan="true" sort="false">
<title lang="en">Record ID</title>
<map>
<name set="rec">id</name>
</map>
<map>
<attr type="1" set="bib1">rec:id</attr>
<attr type="4" set="bib1">3</attr>
</map>
</index>

वापस निकालना

मेरी खोज के लिए http://univ_lyon3.biblibre.com:9999/biblios?version=1.1&operation=searchRetrieve&query=coral reefs&maximumRecords=1 सिर्फ रिकॉर्ड पर पुनर्प्राप्त करता है। प्रतिक्रिया इस तरह दिखती है:

          <zs:searchRetrieveResponse>
<zs:version>1.1</zs:version>
<zs:numberOfRecords>1</zs:numberOfRecords>
<zs:records>
<zs:record>
<zs:recordPacking>xml</zs:recordPacking>
<zs:recordData>
<record xsi:schemaLocation="http://www.loc.gov/MARC21/slim http://www.loc.gov/ standards/marcxml/schema/MARC21slim.xsd">
<leader> cam a22 4500</leader>
<datafield tag="010" ind1=" " ind2=" ">
<subfield code="a">2-603-01193-6</subfield>
<subfield code="b">rel.</subfield>
<subfield code="d">159 F</subfield>
</datafield>
<datafield tag="020" ind1=" " ind2=" ">
<subfield code="a">FR</subfield>
<subfield code="b">00065351</subfield>
</datafield>
<datafield tag="101" ind1="1" ind2=" ">
<subfield code="c">ita</subfield>
</datafield>
<datafield tag="105" ind1=" " ind2=" ">
<subfield code="a">a z 00|y|</subfield>
</datafield>
<datafield tag="106" ind1=" " ind2=" ">
<subfield code="a">r</subfield>
</datafield>
<datafield tag="100" ind1=" " ind2=" ">
<subfield code="a">20091130 frey50 </subfield>
</datafield>
<datafield tag="200" ind1="1" ind2=" ">
<subfield code="a">Guide des récifs coralliens / A Guide to Coral Reefs</subfield>
<subfield code="b">Texte imprimé</subfield>
<subfield code="e">la faune sous-marine des coraux</subfield>
<subfield code="f">A. et A. Ferrari</subfield>
</datafield>
<datafield tag="210" ind1=" " ind2=" ">
<subfield code="a">Lausanne</subfield>
<subfield code="a">Paris</subfield>
<subfield code="c">Delachaux et Niestlé</subfield>
<subfield code="d">cop. 2000</subfield>
<subfield code="e">impr. en Espagne</subfield>
</datafield>
<datafield tag="215" ind1=" " ind2=" ">
<subfield code="a">287 p.</subfield>
<subfield code="c">ill. en coul., couv. ill. en coul.</subfield>
<subfield code="d">20 cm</subfield>
</datafield>
......
<idzebra>
<size>4725</size>
<localnumber>2</localnumber>
<filename>/tmp/nw10BJv9Pk/upd_biblio/exported_records</filename>
</idzebra>
</record>
</zs:recordData>
<zs:recordPosition>1</zs:recordPosition>
</zs:record>
</zs:records>
</zs:searchRetrieveResponse>

ILS-DI

As of writing, the self documenting ILS-DI is the most complete interface and after it has been enabled as described in the ILS-DI system preferences section the documentation should be available at https://YOURKOHACATALOG/cgi-bin/koha/ilsdi.pl

जेएसओएन रिपोर्ट सेवा

कोहा का उपयोग करके सहेजी गई प्रत्येक रिपोर्ट के लिए जेएसओएन रिपोर्ट सेवा लागू करता है :ref:`निर्देशित रिपोर्ट विज़ार्ड <guided-report-wizard-label>' या :ref:`एसक्यूएल <report-from-sql-label>' फीचर्स से रिपोर्ट करें।

डिफ़ॉल्ट रिपोर्ट द्वारा गैर-सार्वजनिक और प्रमाणित उपयोगकर्ताओं द्वारा केवल पहुंच योग्य होगा। यदि कोई रिपोर्ट स्पष्ट रूप से * सार्वजनिक * पर सेट की गई है तो यह किसी के द्वारा प्रमाणीकरण के बिना पहुंच योग्य होगी। इस सुविधा का केवल तभी उपयोग किया जाना चाहिए जब डेटा सुरक्षित रूप से साझा किया जा सके, जिसमें कोई संरक्षक जानकारी न हो।

निम्नलिखित यूआरएल का उपयोग करके रिपोर्टों का उपयोग किया जा सकता है:

  • सार्वजनिक रिपोर्ट

    • OpacBaseURL/cgi-bin/koha/svc/report?id=REPORTID

  • गैर-सार्वजनिक रिपोर्ट

    • StaffBaseURL/cgi-bin/koha/svc/report?id=REPORTID

कुछ अतिरिक्त पैरामीटर भी उपलब्ध हैं:

  • रिपोर्ट द्वारा रिपोर्ट तक पहुंचने के बजाय आप रिपोर्ट के नाम का भी उपयोग कर सकते हैं:

    • .../cgi-bin/koha/svc/report?name=REPORTNAME

  • आसान विकास के लिए डेटा के एनोटेटेड आउटपुट उत्पन्न करने का विकल्प भी है। यह हैश की एक सरणी उत्पन्न करेगा जिसमें फ़ील्ड नाम कुंजी के रूप में शामिल होंगे।

    • .../cgi-bin/koha/svc/report?name=REPORTNAME&annotated=1

संस्करणित रीस्टफुल एपीआई प्रयास

ओपनएपीआई मानक का उपयोग करके दस्तावेज किए गए आधुनिक रीस्टफुल एंडपॉइंट्स के एक संस्करण संस्करण में उपरोक्त एपीआई को एकजुट करने के लिए एक सतत प्रयास है और डिफ़ॉल्ट रूप से उपलब्ध है https://YOURKOHACATALOG/api/v1/

OAuth2 क्लाइंट प्रमाण-पत्र अनुदान

कोहा OAuth2 क्लाइंट क्रेडेंशियल अनुदान को अन्य सिस्टम से मौजूदा उद्योग मानकों का पालन करने के लिए एपीआई सुरक्षित करने के साधन के रूप में अनुदान देता है। OAuth2 क्लाइंट क्रेडेंशियल्स मानक मानक प्रदान करने के बारे में अधिक जानकारी यहां मिल सकती है <https://auth0.com/docs/api-auth/grant/client-credentials>`_.

संरक्षक के लिए एपीआई कुंजी प्रबंधन इंटरफ़ेस

संरक्षक के लिए एपीआई कुंजी बनाने के लिए, सिस्टम वरीयता RESTOAuth2ClientCredentials जरूर संरक्षक रिकॉर्ड में शामिल होने के विकल्प के लिए सक्षम होना चाहिए।

  1. एक संरक्षक रिकॉर्ड पर नेविगेट करें और *अधिक> एपीआई कुंजी प्रबंधित करें *

image1336

  1. यदि संरक्षक के लिए कोई एपीआई कुंजी मौजूद नहीं है तो क्लाइंट आईडी / गुप्त जोड़ी उत्पन्न करने के लिए एक संदेश होगा

image1337

  1. क्लाइंट आईडी / गुप्त जोड़ी के लिए विवरण दर्ज करें और सहेजें पर क्लिक करें

image1338

  1. कोहा अन्य क्लाइंट आईडी सिस्टम से कोहा से कनेक्ट करने के लिए एक अधिकृत आईडी के रूप में उपयोग करने के लिए क्लाइंट आईडी / गुप्त जोड़ी उत्पन्न करेगा

    image1339

  2. एपीआई क्रेडेंशियल जोड़ी के बगल में रिवोक बटन पर क्लिक करने से प्रतिक्रिया प्राप्त होने तक विशिष्ट क्रेडेंशियल जोड़ी निष्क्रिय हो जाएगी