Web APIs - challenges, design points, and research opportunities invited talk at the 2nd international workshop on API usage and evolution (WAPI '18)

Web Application Programming Interfaces (web APIs) provide programmatic, network-based access to remote data or functionalities. Applications, for example, use the Google Places API to learn about nearby establishments, use the Twitter, Instagram, or Facebook API to connect users with friends and fam...

Full description

Saved in:
Bibliographic Details
Published in2018 IEEE ACM 2nd International Workshop on API Usage and Evolution (WAPI) p. 18
Main Author Wittern, Erik
Format Conference Proceeding
LanguageEnglish
Published New York, NY, USA ACM 02.06.2018
SeriesACM Conferences
Subjects
Online AccessGet full text
ISBN9781450357548
1450357547
DOI10.1145/3194793.3194801

Cover

Abstract Web Application Programming Interfaces (web APIs) provide programmatic, network-based access to remote data or functionalities. Applications, for example, use the Google Places API to learn about nearby establishments, use the Twitter, Instagram, or Facebook API to connect users with friends and family, or use the Stripe API to accept end-user payments. Increasingly, applications themselves consist of micro-services that expose their capabilities to one another using web APIs. In comparison to library APIs, which are a common subject of software engineering research, web APIs present unique challenges - both for providers and consumers - that are arguably much less explored yet [3]. For one, in web APIs, providers control both the API and the runtime providing the capabilities exposed by the API. In consequence, providers may extend, change, or even remove these capabilities or the API, with possibly severe effects for consuming applications. In contrast, applications typically depend on specific versions of software libraries, which can be used even as the library evolves. Being controlled by another party and invoked via network, web API consumers also have to consider and possibly mitigate varying quality of service (QoS) characteristics. Primarily, the availabilities and response times of web APIs change over time, possibly impacting application performance or functionality. Furthermore, the use of library APIs is eased by mechanisms like auto-complete or IDE-integrated documentation (at least in typed languages). In contrast, web APIs commonly lack machine-understandable specifications and consume and provide data in the form of strings. To correctly use a web API, developers have to familiarize with semi-structured documentation pages, often written in HTML - there are only few IDE-based error-checking approaches for web APIs yet [2]. Whereas for many programming languages central package manager services provide unified access to available libraries (think Maven for Java, npm for JavaScript, or RubyGems for Ruby), comprehensive listings of web APIs do not exist, hardening their discovery and selection. In this talk, we outline the characteristics of web APIs causing these challenges. We discuss relevant design points, both for providers and consumers, how these design points have been implemented by different web API paradigms in recent years, and recent attempts to bride these paradigms [1]. Throughout the talk, we give examples of our research to address web API-related challenges. Our goal is to inspire WAPI attendees to take on some of the many research opportunities surrounding web APIs.
AbstractList Web Application Programming Interfaces (Web APIs) provide programmatic, network-based access to remote data or functionalities. Applications, for example, use the Google Places API to learn about nearby establishments, use the Twitter, Instagram, or Facebook API to connect users with friends and family, or use the Stripe API to accept end-user payments. Increasingly, applications themselves consist of micro-services that expose their capabilities to one another using web APIs. In comparison to library APIs, which are a common subject of software engineering research, web APIs present unique challenges - both for providers and consumers - that are arguably much less explored yet. In this talk, we outline the characteristics of web APIs causing these challenges. We discuss relevant design points, both for providers and consumers, and how these design points have been implemented by different web API paradigms in recent years. Throughout the talk, we give examples of our research to address web API-related challenges. Our goal is to inspire WAPI attendees to take on some of the many research opportunities surrounding web APIs.
Web Application Programming Interfaces (web APIs) provide programmatic, network-based access to remote data or functionalities. Applications, for example, use the Google Places API to learn about nearby establishments, use the Twitter, Instagram, or Facebook API to connect users with friends and family, or use the Stripe API to accept end-user payments. Increasingly, applications themselves consist of micro-services that expose their capabilities to one another using web APIs. In comparison to library APIs, which are a common subject of software engineering research, web APIs present unique challenges - both for providers and consumers - that are arguably much less explored yet [3]. For one, in web APIs, providers control both the API and the runtime providing the capabilities exposed by the API. In consequence, providers may extend, change, or even remove these capabilities or the API, with possibly severe effects for consuming applications. In contrast, applications typically depend on specific versions of software libraries, which can be used even as the library evolves. Being controlled by another party and invoked via network, web API consumers also have to consider and possibly mitigate varying quality of service (QoS) characteristics. Primarily, the availabilities and response times of web APIs change over time, possibly impacting application performance or functionality. Furthermore, the use of library APIs is eased by mechanisms like auto-complete or IDE-integrated documentation (at least in typed languages). In contrast, web APIs commonly lack machine-understandable specifications and consume and provide data in the form of strings. To correctly use a web API, developers have to familiarize with semi-structured documentation pages, often written in HTML - there are only few IDE-based error-checking approaches for web APIs yet [2]. Whereas for many programming languages central package manager services provide unified access to available libraries (think Maven for Java, npm for JavaScript, or RubyGems for Ruby), comprehensive listings of web APIs do not exist, hardening their discovery and selection. In this talk, we outline the characteristics of web APIs causing these challenges. We discuss relevant design points, both for providers and consumers, how these design points have been implemented by different web API paradigms in recent years, and recent attempts to bride these paradigms [1]. Throughout the talk, we give examples of our research to address web API-related challenges. Our goal is to inspire WAPI attendees to take on some of the many research opportunities surrounding web APIs.
Author Wittern, Erik
Author_xml – sequence: 1
  givenname: Erik
  surname: Wittern
  fullname: Wittern, Erik
  email: witternj@us.ibm.com
  organization: IBM T.J. Watson Research Center
BookMark eNqNkD1PwzAURY0ACSidGVg8MpBi18-xvVFVfFSqBAOI0XLil9aQOlEcBv49qZqJienq6uje4VyQk9hEJOSKsxnnIO8EN6CMmO1TM35EpkbpATAhlQR9_KefkWlKn4yxea5BCXFO7j-woIvXVaIZLbeurjFuMN1SjylsIm2bEPuhuuhphwldV25p07ZN13_H0AdMl-S0cnXC6ZgT8v748LZ8ztYvT6vlYp05rlSfFVKiLyqjdYGAufNMe-C5AsX93JWCCWO0N57nlVbeAJTAhZsrLXVeQQViQq4PvwERbduFnet-rAYQUouBzg7UlTtbNM1XspzZvSI7KrKjIlt0AathcPPPgfgFjjJj4Q
CODEN IEEPAD
ContentType Conference Proceeding
Copyright 2018 Owner/Author
Copyright_xml – notice: 2018 Owner/Author
DBID 6IE
6IL
CBEJK
RIE
RIL
DOI 10.1145/3194793.3194801
DatabaseName IEEE Electronic Library (IEL) Conference Proceedings
IEEE Xplore POP ALL
IEEE Xplore All Conference Proceedings
IEEE Electronic Library (IEL)
IEEE Proceedings Order Plans (POP All) 1998-Present
DatabaseTitleList

Database_xml – sequence: 1
  dbid: RIE
  name: IEEE/IET Electronic Library
  url: https://proxy.k.utb.cz/login?url=https://ieeexplore.ieee.org/
  sourceTypes: Publisher
DeliveryMethod fulltext_linktorsrc
Discipline Computer Science
EISBN 9781450357548
1450357547
EndPage 18
ExternalDocumentID 8443583
Genre orig-research
GroupedDBID 6IE
6IF
6IL
6IN
AAJGR
ABLEC
ACM
ADPZR
ALMA_UNASSIGNED_HOLDINGS
APO
BEFXN
BFFAM
BGNUA
BKEBE
BPEOZ
CBEJK
GUFHI
IEGSK
OCL
RIB
RIC
RIE
RIL
AAWTH
LHSKQ
ID FETCH-LOGICAL-a177t-b55edbf988be4e6ad08d4167471d2ac303998d9d16f87d944c413a278586f4f43
IEDL.DBID RIE
ISBN 9781450357548
1450357547
IngestDate Wed Aug 27 02:07:50 EDT 2025
Wed Jan 31 06:49:58 EST 2024
Wed Jan 31 06:45:59 EST 2024
IsPeerReviewed false
IsScholarly false
Keywords web APIs
software engineering
Language English
License Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for third-party components of this work must be honored. For all other uses, contact the Owner/Author.
LinkModel DirectLink
MeetingName ICSE '18: 40th International Conference on Software Engineering
MergedId FETCHMERGED-LOGICAL-a177t-b55edbf988be4e6ad08d4167471d2ac303998d9d16f87d944c413a278586f4f43
PageCount 1
ParticipantIDs ieee_primary_8443583
acm_books_10_1145_3194793_3194801_brief
acm_books_10_1145_3194793_3194801
PublicationCentury 2000
PublicationDate 20180602
2018-Jun
PublicationDateYYYYMMDD 2018-06-02
2018-06-01
PublicationDate_xml – month: 06
  year: 2018
  text: 20180602
  day: 02
PublicationDecade 2010
PublicationPlace New York, NY, USA
PublicationPlace_xml – name: New York, NY, USA
PublicationSeriesTitle ACM Conferences
PublicationTitle 2018 IEEE ACM 2nd International Workshop on API Usage and Evolution (WAPI)
PublicationTitleAbbrev WAPI
PublicationYear 2018
Publisher ACM
Publisher_xml – name: ACM
SSID ssj0002684733
Score 1.6717284
Snippet Web Application Programming Interfaces (web APIs) provide programmatic, network-based access to remote data or functionalities. Applications, for example, use...
Web Application Programming Interfaces (Web APIs) provide programmatic, network-based access to remote data or functionalities. Applications, for example, use...
SourceID ieee
acm
SourceType Publisher
StartPage 18
SubjectTerms Conferences
Documentation
Information systems -- World Wide Web -- Web services
Software
Software and its engineering -- Software creation and management -- Software post-development issues -- Documentation
Software and its engineering -- Software creation and management -- Software post-development issues -- Software evolution
Software and its engineering -- Software creation and management -- Software post-development issues -- Software version control
Software and its engineering -- Software notations and tools -- Software libraries and repositories
Software Engineering
Software libraries
Twitter
Web APIs
Subtitle invited talk at the 2nd international workshop on API usage and evolution (WAPI '18)
Title Web APIs - challenges, design points, and research opportunities
URI https://ieeexplore.ieee.org/document/8443583
hasFullText 1
inHoldings 1
isFullTextHit
isPrint
link http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwjV1LS8NAEB5sT558Y30xgqBCU02ySbbeRC1VUHuw1FvYV7CoSbFpD_4Qf6-zSVpRBD3ltdkNzCTzzeSbGYADGZGPEBrlMDJuDjMqcYQ6VQ43niZvgyCDLqp93oXdPrt5DB4XoDnPhTHGFOQz07K7xb98namJDZWdcEbGnfs1qEU8LHO15vEUW7Uk8v2qeo_LghNSLhs2atktt01fakK9fmuiUtiQzhLczlYvqSPPrUkuW-r9R2HG_z7eMqx_Zethb26HVmDBpKuwNGvXgNXbuwYfAyPxvHc9RgcvZj1Uxk28LEgc2MuGaU6HItU44-Ph_cji80la1F09w-t0aiEqPoiXZxQ5EnpEj8Z_iyuiDcCPn7IRZqldD_uWvFbMezWtNB2PBvbKocuP16HfuXq46DpVWwZHuFGUOzIIjJZJm3NpmAmFPuWa2WSGyNWeUGQTyYXTbe2GCY90mzFFhlJ4EQ94mLCE-RtQT7PUbAKaULuKiSRwffpie0KKhAm6l2tNsIfxBuyTzGLrb4zjMoU6iCu5xpVcG3D455hYvg1N0oA1K7R4VNbxiCt5bf1-ehsWCRzxkha2A_X8bWJ2CYDkcq_QvE80otTt
linkProvider IEEE
linkToHtml http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwjV1LT9tAEB7xONATLVA1pS1TCQkq4YDtWXvTW8VDSXk0h0Rws_ZlgSh2RBwO_SH9vZ21nVRUldqTX-tdSzP2fDP-ZgZgV6fsIyTOBMTGLSBn8kCZIxNIF1n2Nhgy2Lra51XSH9PXG3GzBAeLXBjnXE0-c12_W__Lt6WZ-VDZoSQ27jJehlVBRKLJ1lpEVHzdkjSO2_o9IYlDVi8fOOr6rfRtX5aVeXjWRqW2ImfrcDlfvyGP3Hdnle6aH3-UZvzfB3wJW7_z9XC4sESvYMkVG7A-b9iA7fu7CT-vncYvw8EUAzyed1GZHuBJTePAYXlXVHyoCotzRh5-m3iEPivqyqufcVA8eZCKI_X9HlWFjB8x4vHPIovoQ_DT23KCZeHXw7Gnr9Xznj61uo771_7KXig_bcH47HR03A_axgyBCtO0CrQQzuq8J6V25BJlj6Qln86QhjZShq0iO3G2Z8Mkl6ntERk2lSpKpZBJTjnFr2GlKAv3BtAlNjSkchHG_M2OlFY5Kb5XWsvAh2QHPrLMMu9xTLMmiVpkrVyzVq4d2PvnmEw_3rm8A5teaNmkqeSRtfJ6-_fTO7DWH11eZBeDq_NteMFQSTYksXewUj3O3HuGI5X-UGvhL4cW2Do
openUrl ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=proceeding&rft.title=2018+IEEE+ACM+2nd+International+Workshop+on+API+Usage+and+Evolution+%28WAPI%29&rft.atitle=Web+APIs+-+Challenges%2C+Design+Points%2C+and+Research+Opportunities%3A+Invited+Talk+at+the+2nd+International+Workshop+on+API+Usage+and+Evolution+%28WAPI+%2718%29&rft.au=Wittern%2C+Erik&rft.date=2018-06-01&rft.pub=ACM&rft.spage=18&rft.epage=18&rft_id=info:doi/10.1145%2F3194793.3194801&rft.externalDocID=8443583
thumbnail_l http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=9781450357548/lc.gif&client=summon&freeimage=true
thumbnail_m http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=9781450357548/mc.gif&client=summon&freeimage=true
thumbnail_s http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=9781450357548/sc.gif&client=summon&freeimage=true