Dumping data out of Alma using PERL and the Alma Analytics API

Slides:



Advertisements
Similar presentations
MY NCBI (module 4.5).
Advertisements

XP 1 Developing a Basic Web Site Tutorial 2: Web Site Structures & Links.
Converting Local Portal Data to MySpace Anne L. Highsmith, Consortia Systems Coordinator & Prabha Acharya, Programmer Analyst II Texas A&M University.
Links and Comments.
XP Browser and Basics1. XP Browser and Basics2 Learn about Web browser software and Web pages The Web is a collection of files that reside.
Slide 1 FastFacts Feature Presentation 12/16/2014 To dial in, use this phone number and participant code… Phone number: Participant code:
Tutorial 11: Connecting to External Data
Google Confidential and Proprietary 1 Intro to Docs Google Apps Apps.
Salesforce.com Web to Leads. Unit Name Web to Leads A web to lead provides users the ability to gather information from their website visitors which automatically.
Branded Websites. Branded Website Training Click the “Edit Pencil” to edit the website Enter in your iBoomerang username and password.
HTML Links and Anchors.
South Dakota Library Network MetaLib Management Basics Adding Resources South Dakota Library Network 1200 University, Unit 9672 Spearfish, SD
SqlReports Dean Dahlvang PSUG-MO March About Dean Dean Dahlvang Director of Administrative Technology for the Proctor.
Windows Internet Explorer 9 Chapter 1 Introduction to Internet Explorer.
Using Publishing Profiles to dump data out of Alma needed for resource sharing systems such as HathiTrust Margaret Briand Wolfe Systems Librarian Boston.
XP New Perspectives on Browser and Basics Tutorial 1 1 Browser and Basics Tutorial 1.
CSCI 6962: Server-side Design and Programming Web Services.
Python and REST Kevin Hibma. What is REST? Why REST? REST stands for Representational State Transfer. (It is sometimes spelled "ReST".) It relies on a.
11 Web Services. 22 Objectives You will be able to Say what a web service is. Write and deploy a simple web service. Test a simple web service. Write.
Enabling High-Quality Printing in Web Applications
Oracle Data Integrator Procedures, Advanced Workflows.
.htaccess Apache server directives BTM 395: Internet Programming.
1 WWW. 2 World Wide Web Major application protocol used on the Internet Simple interface Two concepts –Point –Click.
Users are moving towards web applications Content on the web is more personal & meaningful Development on the web is easier than the OS.
Tutorial Karen Brooks. Login using the code received from your school librarian.
© 2015 Ex Libris | Confidential & Proprietary Yoel Kortick | Senior Librarian Primo Analytics.
1 Yoel Kortick Senior Librarian Working with the Alma Community Zone and Electronic Resources.
With Weebly.com. What hoop do I have to jump through to create my own site? Is it expensive? Is it time consuming? Do I have to be tech savvy? Will it.
Using Publishing Profiles to dump data out of Alma needed for resource sharing systems such as HathiTrust Margaret Briand Wolfe Systems Librarian Boston.
Philosopher’s Index Manual
Data and tools on the Web have been exposed in a RESTful manner. Taverna provides a custom processor for accessing such services.
Chapter 10: Web Basics.
IUIE Reporting Basics Workshop
How to Create Resource Lists in Destiny 14.0
Using Alma Analytics with the Tableau Web Data Connector
How to add a non-Analytics widget to the Alma Dashboard
RefWorks: Advanced November 23, 2005.
Creating Oracle Business Intelligence Interactive Dashboards
Chapter 10: Web Basics.
Links and Comments in HTML5
Introduction The Custom Store Groups folders and functions allows you to create, modify and use store accounts of specific interest to you or your team.
Creating links from an Alma Analytics report to an external web page
Data Virtualization Tutorial… OAuth Example using Google Sheets
Browsing and Searching the Web
Using Alma Analytics with the Tableau Web Data Connector
Service Provider Best Practices
Library skills Search the catalogue. library skills Search the catalogue.
OverDrive Digital Library Basics
OverDrive Digital Library Basics
WEB API.
Windows Internet Explorer 7-Illustrated Essentials
What is Cookie? Cookie is small information stored in text file on user’s hard drive by web server. This information is later used by web browser to retrieve.
Primo RESTful APIs Paul McBride Wei Dai.
Delegating Access & Managing Another Person’s Mail/Calendar with Outlook Information Technology.
Library skills Search the catalogue. library skills Search the catalogue.
Nov 5th Inservice.
Katherine Melling Judy Reading
Welcome to WebCRD.
Overview of Contract Association Batch Upload
Tutorial 7 – Integrating Access With the Web and With Other Programs
Python and REST Kevin Hibma.
OpenURL: Pointing a Loaded Resolver
Find your school and click on it.
MIS 3200 – Unit 6.1 Moving between pages by redirecting
Consuming Web Services with 2E Generated Objects
Online Registration at Stephen F. Austin State University
Accessing Canada's Open Data through APIs
Complete exercise 8-11 in the workbook.
Presentation transcript:

Dumping data out of Alma using PERL and the Alma Analytics API ELUNA Conference 2017 Dumping data out of Alma using PERL and the Alma Analytics API Margaret Briand Wolfe Systems Librarian

Help on Ex Libris Developer Network This is the place to start for using Alma APIs: https://developers.exlibrisgroup.com/alma/apis Create a login Define an application Get an API key Tips and tricks on how to use the Analytics API: https://developers.exlibrisgroup.com/blog/Working-with-Analytics-REST-APIs

Call Format The Analytics API was SOAP (Simple Object Access Protocol) when it was first released. It is now REST (Representational State Transfer) and uses the HTTP protocol. Call base will always begin with: /almaws/v1/analytics/reports Base example from PERL: $rpt_base = "https://api-na.hosted.exlibrisgroup.com/almaws/v1/analytics/reports";

Required Parameters Only one Parameter is Required: Path to the report you want to run from the API. The path is a URL-encoded full path to the report in the OBI catalog, the simplest way to get this is to open your report in Analytics and run it. The path will appear in the URL. To avoid access issues make sure your report is stored in the Shared Folder and not in your personal ‘My Folders’ area.

Path Example

Optional Parameters: limit limit – the default number of rows returned from the API is 25. If you want to increase the number of rows returned set the limit parameter. Note: the OBI returns results in bulks of 25 so set limit to a multiple of 25. Example in PERL: #Override row return from 25 to 1000 $rpt_limit = "&limit=1000"; $rpt_url = sprintf("%s%s%s%s%s", $rpt_base, $rpt_path, $rpt_limit, $key_add, $api_key); https://api-na.hosted.exlibrisgroup.com/almaws/v1/analytics/reports?path=%2Fshared%2FBoston College%2FReports%2FDatawarehouse%2Fe-journal fund info by ISSN&limit=1000&apikey=YOUR_API_KEY_HERE

Using the Resumption Token If there are more results than specified in your rpt_limit, the response will include a ResumptionToken and IsFinished will be false: Only the initial response will return a resumption token, and the same token should be used throughout the session for a given report - Send the same request over and over until IsFinished=true.

Optional Parameters: filters Filters – you can apply your filters directly in your report or you can pass them as parameters in the API call. Pass them as parameters if your run-time parameters will change. The syntax for adding filters to the call is an XML representation of a saw:filter object. The syntax is confusing. To figure it out go back to the your report in Analytics and add the filter there. Then click on the 'Advanced' tab and in the Analysis XML text area search for 'saw:filter‘. I copied the entire Analysis XML area from the Advanced tab into notepad so I could search for the saw:filter area. I then used notepad to build the filter I wanted to copy into my API call. Once you have copied the syntax for the filter out of your report set the filter to ‘Is Prompted’ in Alma Analytics.

Filters, cont

Filters, cont Example of filter copied from Analytics Report: Filter: Permanent LC Classification Code begins with R What filter looks like in the Advanced Analysis XML: <saw:filter> <sawx:expr xsi:type="sawx:list" op="beginsWith"> <sawx:expr xsi:type="sawx:sqlExpression">"Holding Details"."Permanent LC Classification Code"</sawx:expr> <sawx:expr xsi:type="xsd:string">R</sawx:expr></sawx:expr></sawx:expr> </saw:filter>

Filters, cont Now set the filter to ‘Is Prompted’ in your report: Refer to the tech blog referenced in slide 3 to determine how to convert the filter using namespaces for URL Encoding.

Filters, cont: URL Encoding $rpt_filter_begin = "&filter=%3Csawx%3Aexpr%20xsi%3Atype%3D%22sawx%3Alogical%22%20op%3D%22beginsWith%22%20xmlns%3Asaw%3D%22com.siebel.analytics.web%2Freport%2Fv1.1%22%20%0Axmlns%3Asawx%3D%22com.siebel.analy\ tics.web%2Fexpression%2Fv1.1%22%20xmlns%3Axsi%3D%22http%3A%2F%2Fwww.w3.org%2F2001%2FXMLSchema-instance%22%20%0Axmlns%3Axsd%3D%22http%3A%2F%2Fwww.w3.org%2F2001%2FXMLSchema%22%3E%0A%3Csawx%3Aexpr%20xsi%3Atype\ %3D%22sawx%3AsqlExpression%22%3E%22Holding%20Details%22.%22Permanent%20LC%20Classification%20Code%22%3C%2Fsawx%3Aexpr%3E%0A%3Csawx%3Aexpr%20xsi%3Atype%3D%22xsd%3Astring%22%3E"; $rpt_filter_end = "% 3C%2Fsawx%3Aexpr%3E%0A%3C%2Fsawx%3Aexpr%3E"; $rpt_args = "R"; $rpt_filter = sprintf("%s%s%s", $rpt_filter_begin, $rpt_args, $rpt_filter_end);

Full API Call https://api-na.hosted.exlibrisgroup.com/almaws/v1/analytics/reports?path=%2Fshared%2FBoston College%2FReports%2FDatawarehouse%2FPullItem&limit=1000&apikey=YOUR_API_KEY_HERE&filter=%3Csawx%3Aexpr%20xsi%3Atype%3D%22sawx%3Alogical%22%20op%3D%22beginsWith%22%20xmlns%3Asaw%3D%22com.siebel.analytics.web%2Freport%2Fv1.1%22%20%0Axmlns%3Asawx%3D%22com.siebel.analytics.web%2Fexpression%2Fv1.1%22%20xmlns%3Axsi%3D%22http%3A%2F%2Fwww.w3.org%2F2001%2FXMLSchema-instance%22%20%0Axmlns%3Axsd%3D%22http%3A%2F%2Fwww.w3.org%2F2001%2FXMLSchema%22%3E%0A%3Csawx%3Aexpr%20xsi%3Atype%3D%22sawx%3AsqlExpression%22%3E%22Holding%20Details%22.%22Permanent%20LC%20Classification%20Code%22%3C%2Fsawx%3Aexpr%3E%0A%3Csawx%3Aexpr%20xsi%3Atype%3D%22xsd%3Astring%22%3ER%3C%2Fsawx%3Aexpr%3E%0A%3C%2Fsawx%3Aexpr%3E

Find Code on Github

Easier Access to Alma data from Tableau For those of you out there using Tableau, Ex Libris has just released a web page whose URL you can plug into the Tableau Web Data Connector that facilitates easy access to your Alma Analytics reports. You just need to add your API key and the path to the report you want to run. For more information see the Power Point on the Ex Libris Knowledgebase: https://knowledge.exlibrisgroup.com/Alma/Training/Extended_Training/Presentations_and_Documents - click on Analytics and then click on link for ‘Analytics - Using Alma Analytics With the Tableau Web Data Connector.pptx’

Questions / Discussion? Contact me: ELUNA Conference 2017 Questions / Discussion? Contact me: Margaret Briand Wolfe briandwo@bc.edu