Wireless Personal Communications

, Volume 91, Issue 4, pp 1711–1748 | Cite as

Design and Evaluation of a Services Interface for the Internet of Things

  • Caio César de Melo Silva
  • Hiro Gabriel Cerqueira Ferreira
  • Rafael Timóteo de Sousa Júnior
  • Fábio Buiati
  • Luis Javier García Villalba


This paper proposes an application programming interface (API) for accessing services within the internet of things (IoT) through both REST and SOAP protocols. This API provides methods and procedures to allow its usage for performing IoT control and event monitoring operations. In order to encompass devices diversity, the proposed API introduces a uniform abstraction model that constitutes a common standard view to manage objects. An abstract device services interface is then available instead of device commands, thus providing transparent access to devices capabilities and hiding the physical aspects of provider devices. The API has been designed to ease the remote management of IoT smart objects and was implemented as a module of an existing IoT middleware (UIoT). Experimental evaluation of both protocol implementations yields results showing the REST services with faster response time and lower resources usage than similar SOAP services.


Internet of things (IoT) IoT application programming interface (IoT API) IoT middleware REST services SOAP services UPnP devices 



This work was supported by “Programa de Financiación de la Universidad Complutense de Madrid - Banco Santander para Grupos de Investigación UCM (Referencia: GR3/14)”. In addition, the authors wish to thank the Brazilian research, development and innovation Agencies CAPES (Grant FORTE 23038.007604/2014-69), FINEP (Grant RENASIC/PROTO 01.12.0555.00) and the National Post-Doctorate Program (PNPD/CAPES) for their support to this work.


  1. 1.
    Ashton, K. (2009). That ‘internet of things’ thing. RFiD Journal, 22(7), 97–114.Google Scholar
  2. 2.
    Want, R. (2000). Remembering mark weiser: Chief technologist, xerox parc. IEEE Personal Communications, 7(1), 8–10.CrossRefGoogle Scholar
  3. 3.
    Evans, D. (2011). The internet of things: How the next evolution of the internet is changing everything. CISCO White Paper (online).
  4. 4.
    Plug, U., & Forum, P. (2000). Understanding universal plug and play (online).
  5. 5.
    Ferreira, H. G. C., Canedo, E. D., & de Sousa, R. T. (2014). A ubiquitous communication architecture integrating transparent UPnP and rest APIs. International Journal of Embedded Systems, 6(2), 188–197.CrossRefGoogle Scholar
  6. 6.
    Thoma, M., Meyer, S., Sperner, K., Meissner, S., & Braun, T. (2012). On iot-services: Survey, classification and enterprise integration. In 2012 IEEE international conference on green computing and communications (GreenCom) (pp. 257–260).Google Scholar
  7. 7.
    Bandyopadhyay, D., & Sen, J. (2011). Internet of things: Applications and challenges in technology and standardization. Wireless Personal Communications, 58(1), 49–69. doi: 10.1007/s11277-011-0288-5.CrossRefGoogle Scholar
  8. 8.
    Gronbaek, I. (2008). Architecture for the internet of things (iot): API and interconnect. In Second international conference on sensor technologies and applications, 2008 (SENSORCOMM’08) (pp. 802–807), IEEE.Google Scholar
  9. 9.
    Grønbæk, I., Nord, M., & Jakobsson, S. (2007). Abstract service API for connected objects. R&I Report, 18, 2007-06.Google Scholar
  10. 10.
    Atzori, L., Iera, A., & Morabito, G. (2010). The internet of things: A survey. Computer Networks, 54(15), 2787–2805.CrossRefzbMATHGoogle Scholar
  11. 11.
    Da Xu, L., He, W., & Li, S. (2014). Internet of things in industries: A survey. IEEE Transactions on Industrial Informatics, 10(4), 2233–2243.CrossRefGoogle Scholar
  12. 12.
    Kim, Y., Lee, S., & Chong, I. (2014). Orchestration in distributed web-of-objects for creation of user-centered iot service capability. Wireless Personal Communications, 78(4), 1965–1980.CrossRefGoogle Scholar
  13. 13.
    Presser, M., Barnaghi, P. M., Eurich, M., & Villalonga, C. (2009). The sensei project: Integrating the physical world with the digital world of the network of the future. IEEE Communications Magazine, 47(4), 1–4.CrossRefGoogle Scholar
  14. 14.
    Project, I.-A. (2009). Internet of things architecture (online).
  15. 15.
    iCore Project. (2009). icore—cognitive management framework (online).
  16. 16.
    Project, B. (2009). Butler (online).
  17. 17.
    Gubbi, J., Buyya, R., Marusic, S., & Palaniswami, M. (2013). Internet of things (IoT): A vision, architectural elements, and future directions. Future Generation Computer Systems, 29(7), 1645–1660.CrossRefGoogle Scholar
  18. 18.
    Cerqueira Ferreira, H., Dias Canedo, E., & de Sousa, R. (2013). IoT architecture to enable intercommunication through rest api and UPnP using ip, zigbee and arduino. In 2013 IEEE 9th international conference on wireless and mobile computing, networking and communications (WiMob) (pp. 53–60), IEEE.Google Scholar
  19. 19.
    Fielding, R. T., & Taylor, R. N. (2002). Principled design of the modern web architecture. ACM Transactions on Internet Technology (TOIT), 2(2), 115–150.CrossRefGoogle Scholar
  20. 20.
    Jakl, M. (2008). Rest representational state transfer. Technical report. Vienna: University of Technology.Google Scholar
  21. 21.
    Curbera, F., Duftler, M., Khalaf, R., Nagy, W., Mukhi, N., & Weerawarana, S. (2002). Unraveling the Web services web: An introduction to SOAP, WSDL, and UDDI. IEEE Internet Computing, 2, 86–93.CrossRefGoogle Scholar
  22. 22.
    Plug, U., & Forum, P. (2004). UPnP device architecture v1.0 (online).
  23. 23.
    Richardson, L., & Ruby, S. (2008). RESTful web services. Sebastopol: O’Reilly Media, Inc.Google Scholar
  24. 24.
    Fowler, M. (2002). Patterns of enterprise application architecture. Reading: Addison-Wesley Longman.Google Scholar
  25. 25.
    Plug, U. (1999). Play forum. In About the UPnP plug and play forum.
  26. 26.
    Axelson, J. (2009). USB complete: The developer’s guide. Chicago: Lakeview Research.Google Scholar
  27. 27.
    Arnold, K., Scheifler, R., Waldo, J., O’Sullivan, B., & Wollrath, A. (1999). Jini specification. Reading: Addison-Wesley Longman.Google Scholar
  28. 28.
    Serme, G., de Oliveira, A. S., Massiera, J., & Roudier, Y. (2012). Enabling message security for restful services. In 2012 IEEE 19th international conference on Web services (ICWS) (pp. 114–121), IEEE.Google Scholar
  29. 29.
    Hardt, D. (2012). The oauth 2.0 authorization framework (online).
  30. 30.
    Ferreira, H. G. C., de Sousa, R. T., de Deus, F. E. G., & Canedo, E. D. (2014). Proposal of a secure, deployable and transparent middleware for internet of things. In 2014 9th Iberian conference on information systems and technologies (CISTI) (pp. 1–4), IEEE.Google Scholar
  31. 31.
    Halili, E. (2008). Apache JMeter. Birmingham: Packt Publishing.Google Scholar

Copyright information

© Springer Science+Business Media New York 2016

Authors and Affiliations

  • Caio César de Melo Silva
    • 1
  • Hiro Gabriel Cerqueira Ferreira
    • 1
  • Rafael Timóteo de Sousa Júnior
    • 1
  • Fábio Buiati
    • 1
  • Luis Javier García Villalba
    • 2
  1. 1.Electrical Engineering Department (ENE)University of Brasilia (UnB)BrasíliaBrazil
  2. 2.Group of Analysis, Security and Systems (GASS), Department of Software Engineering and Artificial Intelligence (DISIA), Faculty of Information Technology and Computer Science, Office 431Universidad Complutense de Madrid (UCM)MadridSpain

Personalised recommendations