O'Reilly logo
live online training icon Live Online training


Building fast, secure, and idiomatic Go REST APIs

Topic: Web & Mobile
Mofi Rahman

If you’ve been around the internet for a while, you’ve probably interacted with REST APIs in some form or another. A major portion of the internet works on REST APIs. Most modern languages support creating REST APIs, and Go in particular is an excellent choice for building modern RESTful web APIs. It’s fast, compiled, and easy to use—and, most importantly, supports developer productivity.

Join expert Mofi Rahman to learn how to build fast, scalable REST APIs with Go. You’ll explore what REST APIs are, dive into Go libraries and frameworks for building REST APIs, and more.

What you'll learn-and how you can apply it

By the end of this live online course, you’ll understand:

  • What REST APIs are
  • Why you should use Go for building REST APIs

And you’ll be able to:

  • Use Go for your next web application
  • Build REST APIs for your application

This training course is for you because...

  • You’re a developer.
  • You want to build REST APIs.
  • You want to use Go for building microservices.


  • A computer with Go 1.13+ installed and configured (Optional: Install an editor with Go support—VS Code + the Go extension, for example.)
  • A working knowledge of Go
  • Familiarity working in a terminal

Recommended preparation:

Recommended follow-up:

About your instructor

  • Mofizur Rahman (@moficodes) is a Developer Advocate at IBM. His area of interests include container orchestration and microservices. His favorite programming language these days is Go. He also tinkers with Node, Python and Java. He is also learning and teaching Go, Kubernetes, Docker and Microservice community. He is a strong believer of the power of open source and importance of giving back to the community. He is a self-proclaimed sticker collecting addict and has collected several boxes full of stickers with no signs of stopping. He sometimes dabbles in photography.


The timeframes are only estimates and may vary according to how the class is progressing

Introduction to REST API fundamentals (55 minutes)

  • Presentation: REST API basics; Go REST API primitives; standard library support
  • Group discussion: REST’s philosophy; examples in other languages
  • Hands-on exercise: Build a simple REST API server with Go
  • Q&A

Break (5 minutes)

REST APIs with Go (55 minutes)

  • Presentation: Libraries versus frameworks
  • Group discussion: Explore Go libraries and frameworks for building REST APIs
  • Presentation: gorilla/mux
  • Hands-on exercise: Convert the API from section 1 to use gorilla/mux
  • Q&A

Break (5 minutes)

Next steps and improvements (60 minutes)

  • Presentation: Middleware and security; best practices, testing, and databases
  • Group discussion: Frameworks versus libraries; the importance of testing
  • Hands-on exercise: Explore the final REST API
  • Q&A