REST APIs

Practical REST API skills for developers

This two-day course is aimed at developers who want to strengthen their understanding of REST architecture and implementation. It covers the full lifecycle of REST API development, from core principles through to service creation, client interaction and optimisation. Using your preferred programming language, you’ll build the ability to design scalable APIs and solve real development challenges. Ideal for those with coding experience looking to apply REST principles more effectively in day-to-day work. 

Learning objectives
  • Understand core REST principles  
  • Build services in your preferred language  
  • Develop REST clients using libraries  
  • Apply caching and compression techniques  
  • Explore the Richardson Maturity Model  
  • Handle query and data challenges  
  • Implement authentication methods  
  • Use versioning and HATEOAS 

Key facts

Ideal for

This is a skills and knowledge-based course with no formal accreditation. 

Who it’s for

This course is designed for developers working with RESTful services using Java, Python or JavaScript. 

Prerequisites

This course requires basic experience with at least one programming language such as Java, Python or JavaScript. 

Exam information

This course does not include an exam. 

Optional extras

There are no optional extras for this course. 

Pre-course

No preparation work is required for this course. 

Course syllabus

Dive into the detail of the course by looking at the syllabus below. 

Day one
  • Session 1: PREREQUISITES
    • APIs
    • Web apps
    • Web services
    • HTTP
    • JSON
    • Serialisation
Day one
  • Session 2: REST THEORY
    • What is a REST API?
    • Guiding principles/constraints
    • Resources
    • Methods
    • Naming
Day one
  • Session 3: REST SERVICES
    • Designing a REST API
    • Building a REST service with:
    • Spring Boot (Java) or;
    • Flask (Python) or;
    • Express (JavaScript)
Day one
  • Session 4: REST CLIENTS
    • Off-the-shelf REST clients, e.g. Postman
    • Building a REST client with:
    • HttpClient (Java) or;
    • Requests (Python) or;
    • Axios (JavaScript)
    • Shape
Day two
  • Session 5: REST API CONFIGURATION
    • Caching
    • Compression
    • Content negotiation
    • HATEOAS
    • Idempotence
    • Security
    • Versioning
    • Statelessness
    • Documentation
Day two
  • Session 6: MORE REST THEORY
    • The Richardson Maturity Model
    • Searching, sorting, and pagination
    • The n+1 problem
    • PUT vs. POST
    • Authentication techniques

FAQs

This course builds practical skills in designing, developing and optimising RESTful services and clients. It combines theory with hands-on exercises, supporting developers in applying REST principles using modern tools and frameworks in real-world development environments. 

Which programming languages are supported?

The course supports development in Java, Python and JavaScript. Exercises and examples can be completed using your preferred language, allowing you to apply REST concepts within a familiar development environment. 

Is this suitable for beginners?

Some prior programming experience is recommended. Those new to coding may benefit from completing an introductory programming course before attending, as the content assumes familiarity with at least one language. 

What tools are used during the course?

Development activities include frameworks such as Spring Boot, Flask and Express, as well as client libraries like HttpClient, Requests and Axios. Testing tools such as Postman are also used to validate API behaviour and responses. 

Is this relevant for front-end and back-end roles?

REST APIs are used across both front-end and back-end development. The course supports building services as well as consuming APIs, making the content relevant for a wide range of development responsibilities. 

Why study with TSG?
25+ years' experience

Trusted by individuals, businesses and public sector organisations for over 25 years.

20,000+ learners trained

Join a network of learners focused on developing their software testing skills 

98% customer satisfaction

TSG trainers are frequently rated as ‘good’ or ‘excellent’ by our learners

Speak to our team
Guidance from experienced advisors

If you’re unsure which course aligns with your technical requirements or career direction, we’ll help you assess your options and choose with confidence.  

Build capability
Develop skills that support real delivery outcomes

From software testing to broader digital skills, we work with you to design learning that strengthens capability, improves performance, and supports long-term business goals.

Quote request

Please complete the form to ensure your quote is accurate and we will contact you soon.

Page {{ step }} of 2

Back Next