This document provides a tutorial on REST web services. It begins with an introduction to REST, covering key principles such as every element having an ID, things being linked, using standard HTTP methods, providing multiple representations, and communicating statelessly. The tutorial then discusses fundamental HTTP concepts, REST examples, design guidelines, documenting REST with WSDL and WADL, and a case study applying REST principles to a university student services API. It concludes with code samples in C# and Java for making HTTP requests, and an overview of other web service protocols like SOAP and OData.