iDigBio API Hackathon ‘15 Introductory Webinar Matthew Collins (mcollins@acis.ufl.edu) Alex Thompson (godfoder@acis.ufl.edu) Greg Traub (gtraub@acis.ufl.edu) Dan Stoner (dstoner@acis.ufl.edu) Advanced Computing and Information Systems Laboratory (ACIS) University of Florida Welcome everyone….
Today’s agenda Welcome and overview of the event API inventory Walkthrough of Search and Mapping APIs Simple examples of Search and Mapping Libraries available Dissemination of hackathon ideas Questions
iDigBio: http://www.idigbio.org
Hackathon Event Agenda https://github.com/idigbio-api-hackathon/HackathonCentral/wiki/Hackathon-Agenda June 3, 2015 - Wednesday 8:30am - 9:45am Welcome and introductions 10:15am - 11:15am Pitch your idea, set your goal, choose a partner 11:15am - 12:00am Report on team goals 1:00pm - 5:00pm Code! June 4, 2015 – Thursday 8:30am - 9:15am Brief reports on progress (10 min per team) 9:15am - 5:00pm Code! June 5, 2015 – Friday 8:30am - 12:00am Code! 1:00pm - 3:00pm Final product report (30 min per team)
Web Portal Interface: Search across all data, all/individual fields, customize, use autocompletion, synonyms,… Portal provides an easy search interface for all indexed data in iDigBio A user can search across all fields (full-text search) A user can search individual fields (advanced search fields) Advanced search fields provide progressive autocompletion (meaning any used fields are taken into account when providing suggestions) Lower taxonomy search fields (Family, Genus, Specific Epithet) provide an “Add EOL Synonyms” button for adding synonyms to a users entries utilizing the Encyclopedia Of Life API.
API Inventory There are several “APIs” for several purposes: Search API (provides access to records, what we’ll talk about today) Mapping (a subset of the search API) Download API (provides DwCA files asynchronously) Media ingestion API (used by the appliance, requires authentication) Ingestion API (used internally)
Search API Development Status Beta status today (publically available but functionality might change) Production status June 1, 2015
Search API Documentation https://github.com/iDigBio/idigbio-search-api (Alex Thompson)
Search API Examples http://beta-next.idigbio.org:19199 (Greg Traub)
Search API Examples – jQuery records Basic search using a JSON object for finding Genus ‘Acer’ with Images: http://beta-next.idigbio.org:19199 {"rq":{"genus": “acer”, "hasImage": true}} $.ajax(‘https://beta-search.idigbio.org/v2/search/records/’,{ dataType: 'json', contentType: 'application/json', type: ‘POST’, data: JSON.stringify({"rq":{"genus": “acer”, "hasImage": true}}) });
Search API Examples – jQuery maps Building a map: $.ajax(‘https://beta-search.idigbio.org/v2/mapping/’,{ dataType: 'json', contentType: 'application/json', type: ‘POST’, data: JSON.stringify({"rq":{"genus": “acer”, "hasImage": true}}) });
Libraries and Hackathon Ideas (Dan Stoner)
iDigBio Client Libraries R Project ridigbio R Package for Search API https://github.com/idigbio/ridigbio Python Library for Search API https://github.com/idigbio/idigbio-python-client/
ridigbio (R Package) Not yet in The Comprehensive R Archive Network (CRAN), but hopefully soon. In the meantime…
idigbio (Python Library) Available in the Python Package Index (PyPI).
Hackathon GitHub resources Main: https://github.com/idigbio-api-hackathon Wiki: https://github.com/idigbio-api-hackathon/HackathonCentral/wiki
Hackathon GitHub resources (cont’d) Use Issues to submit and comment on ideas...
Hackathon Resources Summary Github organization for hackathon: https://github.com/idigbio-api-hackathon HackathonCentral project has all information Your projects will go here iDigBio API repository w/ documentation: https://github.com/iDigBio/idigbio-search-api API overviews: https://www.idigbio.org/wiki/index.php/IDigBio_API API users mailing list: http://lists.ufl.edu/cgi-bin/wa?A0=IDIGBIO-API-USERS-L
Questions? Deer mouse / Missouri Department of Conservation