HOME > Development > Build a server-side RESTful API with Coldbox (Merapi)

Build a server-side RESTful API with Coldbox (Merapi)

  • Development
  • Mar 26, 2025
SynopsisBuild a server-side RESTful API with Coldbox (Merapi , availa...
Build a server-side RESTful API with Coldbox (Merapi)  No.1

Build a server-side RESTful API with Coldbox (Merapi), available at $54.99, has an average rating of 5, with 25 lectures, based on 3 reviews, and has 39 subscribers.

You will learn about Use the Coldbox framework to build a REST API Create a database schema with Coldbox migration (cfmigrations) components Write model components classes and test them with the Testbox BDD module Write API handlers and test them with the Testbox BDD module Document the API by adding annotations to each of our handlers actions Generate our API documentation with the Coldbox cbSwagger module Create an OpenAPI yaml file with the Open API Editor (f.k.a the Swagger editor) Import the generated OpenAPI yaml file in POSTMAN Test the API with data input within POSTMAN Export the API from POSTMAN as a collection file This course is ideal for individuals who are Software developers, consultants and corporate power users or Developers and maintainers of legacy ColdFusion code or Developers recognising the value of open source technology adoption or Developers that are open to learn and explore an alternative server side technology It is particularly useful for Software developers, consultants and corporate power users or Developers and maintainers of legacy ColdFusion code or Developers recognising the value of open source technology adoption or Developers that are open to learn and explore an alternative server side technology.

Enroll now: Build a server-side RESTful API with Coldbox (Merapi)

Summary

Title: Build a server-side RESTful API with Coldbox (Merapi)

Price: $54.99

Average Rating: 5

Number of Lectures: 25

Number of Published Lectures: 25

Number of Curriculum Items: 25

Number of Published Curriculum Objects: 25

Original Price: $24.99

Quality Status: approved

Status: Live

What You Will Learn

  • Use the Coldbox framework to build a REST API
  • Create a database schema with Coldbox migration (cfmigrations) components
  • Write model components classes and test them with the Testbox BDD module
  • Write API handlers and test them with the Testbox BDD module
  • Document the API by adding annotations to each of our handlers actions
  • Generate our API documentation with the Coldbox cbSwagger module
  • Create an OpenAPI yaml file with the Open API Editor (f.k.a the Swagger editor)
  • Import the generated OpenAPI yaml file in POSTMAN
  • Test the API with data input within POSTMAN
  • Export the API from POSTMAN as a collection file
  • Who Should Attend

  • Software developers, consultants and corporate power users
  • Developers and maintainers of legacy ColdFusion code
  • Developers recognising the value of open source technology adoption
  • Developers that are open to learn and explore an alternative server side technology
  • Target Audiences

  • Software developers, consultants and corporate power users
  • Developers and maintainers of legacy ColdFusion code
  • Developers recognising the value of open source technology adoption
  • Developers that are open to learn and explore an alternative server side technology
  • We are going to build a Coldbox REST APIand test it using the TestBox module. We shall document this API by adding annotations to our API handlers. We’ll then use the Coldbox cbSwagger module to generate our API documentation in the Swagger Editor. Finally, we’ll use Postman to input data in order to simulate API responses from calls to our development server.

    Please note however, that it is not in the scope of this course to explain Swagger Editor and Postman tools in detail. Also note that  API security issues using Coldbox cbSecurity and JWT (Json Web Tokens) won’t  be discussed in this course. Last and not least, we won’t build and connect a javaScript front-end to this server-side API.

    We are first going to add tables to our MySQL database schema called Merapi (4 tables altogether) , build relationships between those tables and populate our tables with seed data with the help of Coldbox cfmigrations module. This database schema manages data about Countries, Currencies, Cities and Airports. The cfmigrations module was already covered in detail in my two earlier tutorials, but will be covered again at the beginning of this tutorial and documented in the guide provided with it.

    Next, we are going to build our model and map our entity class property names to our tables columns name using an XML schema file representing the database schema. We’ll also have an XML Loader file to read the XML schema, thus implementing a simple custom object relational mapper.  This approach is an alternative, to what we demonstrated in another course called Tamarind v1, in which we used Quick ORM to map entity object properties to table columns and to load entities in memory. Therefore, in this course, no ORM is involved.

    We also leveraged object inheritance with the creation of a BaseService parent component. Like a DAO (Data Access Object), this component provides an abstraction of our queries for READ, DELETE and record filtering methods. This way, there is no need to write those queries again in the children components. We simply call the relevant method from the BaseService parent component with the Super keyword.

    To make sure that our model entity and services are fully functional, we shall use the Testbox module to write unit tests. After completing our model entity and service components and making sure all our unit tests pass, we shall focus on building the API itself. The API is going to deal with two types of things: the API handlers and the API documentation.

    The handlers are composed of actions (index, show, create, update and delete). As we write our handlers, we shall also write the corresponding integration tests that guarantee that our handlers are working fine. Integration tests will also be written with Testbox. 

    The API documentation is composed of json files such as responses, requestBody, parameters and examples that apply to each handler’s action based on an API response such as 2xx (Success), 4xx (Not found or validation error) or 5xx (Server error). A pointer to each of these json files found in the /apidocs folder, will be added as an annotation to the handler’s action code. Thanks to this, our API documentation will become immediately exportable to tools such as Postman or OpenAPI (Swagger).

    Once this is done, we shall leverage the Coldbox cbswagger module to generate an output as we hit our development server url at cbswagger. Copying and pasting this cbwagger output in our Swagger Editor will not only deliver a colourful and neat documentation of our API, but also generate an openAPI.yaml file that we can then import into Postman. Postman is a tool that allows further testing of our API server with real data.

    At the end of the course, you should have acquired a solid and practical understanding as how to build a server-side REST API with the Coldbox framework.

    Course Curriculum

    Chapter 1: Introduction

    Lecture 1: Introduction

    Lecture 2: About Merapi

    Chapter 2: Getting started

    Lecture 1: Pre-requisites

    Lecture 2: Configure the project

    Lecture 3: Configure the server

    Lecture 4: Review the installation

    Chapter 3: Build the database schema

    Lecture 1: Configure schema migration

    Lecture 2: Create migration components

    Lecture 3: Migrate tables with seed data

    Lecture 4: Add foreign key constraints

    Chapter 4: Build the API model

    Lecture 1: Schema mapping

    Lecture 2: Create entities

    Lecture 3: Entities unit tests

    Lecture 4: Create services

    Lecture 5: Services unit tests

    Chapter 5: Build the API handlers

    Lecture 1: Configure the API routes

    Lecture 2: Write the Country API handler

    Lecture 3: Write a Country API integration test

    Lecture 4: Complete the API handlers

    Lecture 5: Complete the integration tests

    Chapter 6: Import/export API documentation

    Lecture 1: Document the API

    Lecture 2: Generate the API documentation file

    Lecture 3: POSTMAN – Import the API file

    Lecture 4: POSTMAN – Test the API responses

    Chapter 7: Conclusion and wrap up

    Lecture 1: What youve learnt and what is next?

    Instructors

  • Build a server-side RESTful API with Coldbox (Merapi)  No.2
    Philippe SAMBOR
    Managing partner at Aquarius Logics
  • Rating Distribution

  • 1 stars: 0 votes
  • 2 stars: 0 votes
  • 3 stars: 0 votes
  • 4 stars: 0 votes
  • 5 stars: 3 votes
  • Frequently Asked Questions

    How long do I have access to the course materials?

    You can view and review the lecture materials indefinitely, like an on-demand channel.

    Can I take my courses with me wherever I go?

    Definitely! If you have an internet connection, courses on Udemy are available on any device at any time. If you don’t have an internet connection, some instructors also let their students download course lectures. That’s up to the instructor though, so make sure you get on their good side!