Siirry sisältöön

The course will be in English.


  • Kohderyhmä: Developers interested in RESTful API Design
  • Hakuaika: 
  • Ajoitus: 
  • Laajuus: 5 ECTS
  • Sijainti: Online
  • Hinta: Free

Learning outcomes

Designing APIs for use over the web is a key part of most web development projects   these   days.   Knowing   the   best   way   to   design   them   with  longevity, testability and reliability in mind is important. By explaining API Design stepsand API Design approaches, the student will be familiar with all these conceptsin a practical way. Then the student will be familiar with different API styles, and obtain a deeper level of knowledge about REST and its key difference and advantageous over the other styles. Finally, the student will understand security and performance concerns.

The   student   will   pass   this   course   after   submitting   required   assignments, quizand projects.

Introduction to Contents

Introduction Part:

  • What is an API?
  • Why we are using APIs?
  • What makes a business service good and practical?
  • How to use an API?
  • Clients using an API-based solution
  • What does an API-based solution consists of?
  • What is API Design?
  • API Design Decisions
  • API Design vs. API Architecture

Intermediate Part:

  • API Description Languages
  • Usage of API Description Languages
  • Limitations of API Description Languages
  • APIs responsibilities
  • API properties
  • Different API Styles (REST-SOAP-RPC-HATEOAS)
  • REST vs. SOAP - REST Concept vs. HTTP Concept

Advanced Part:

  • Richardson Maturity Model
  • Content Negotiation
  • Parameters
  • HTTP Methods
  • Input and Output Validation
  • Building API Approaches
  • Dealing with Backend Errors

Learning material:

  • Tutorial Videos& slides
  • Assignments
  • Quiz
  • Projects

Evaluation methods:

  • Assignments 40%
  • Quiz 20%
  • Project 40%

Student's use of time and load

  • Lectures = 25h
  • Labs = 25h
  • Assignments = 35h
  • Self-study = 40h
  • Quiz = 2h
  • Project = 5h
  • Total = 132 hours