DZone
Web Dev Zone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
  • Refcardz
  • Trend Reports
  • Webinars
  • Zones
  • |
    • Agile
    • AI
    • Big Data
    • Cloud
    • Database
    • DevOps
    • Integration
    • IoT
    • Java
    • Microservices
    • Open Source
    • Performance
    • Security
    • Web Dev
DZone > Web Dev Zone > Recreating the Real-World API With Low-Code

Recreating the Real-World API With Low-Code

This article will share the journey of replicating the Real-World REST API (Conduit) from scratch using Linx, a low-code developer tool.

Anthony Morris user avatar by
Anthony Morris
·
Dec. 22, 21 · Web Dev Zone · Tutorial
Like (3)
Save
Tweet
8.89K Views

Join the DZone community and get the full member experience.

Join For Free

Building a fully functional REST API from the ground up is a large project for any developer and even more challenging for IT professionals unfamiliar with the nuances of how APIs are coded, deployed, and maintained.  

Thereʼs is an opportunity for low-code tools to reduce the time spent on API integrations. These tools can lighten your load and manage most of the complexity for you, allowing developers to work on other aspects of their stack. 

To demonstrate, we've built a fully functioning RealWorld API using a low-code tool, Linx.  The API shows a fully-fledged backend application, including CRUD operations, authentication, routing, pagination, and more.  

What is Linx

Linx is a general-purpose low-code platform for building backends like APIs, automation, and integrations. It is an abstraction of programming itself and is not the domain, process, or tool-specific. This means it can be used for any backend application in any domain with no limitations on connections to other tools and services. The use of a programming abstraction makes Linx extremely powerful. It is not constrained by a domain or use-case-driven paradigm and is often used in conjunction with other low-code tools to provide the API or integration services that those tools are not designed for.

It is a compelling choice for internal and external REST web services, and being low code, is one of the fastest ways to extend an API that requires integration with other technologies (e.g., you need to load or push data into a database, conjure up a rapport, push updates to notification stream, modify or encrypt data at any point, etc). It also offers several other features from database to cryptography and cloud, which creates tons of possibilities for integrating your API with multiple technologies. Linx includes hosting on a dedicated server (cloud - database included or on-premise) with monitoring, access control, and versioning as standard.

________________________________________________________________________________

The Conduit Stack

There are many different ways you can configure and build out a full-stack app. For example, you can have your front-end & backend codebases hosted separately, together, or even partially render parts of your front-end on the server (commonly known as "server-side rendering"). For this article, we developed the backend API. To complete the project, you can use any front-end apps that integrate with the completed RealWorld API. Deploying backend and front-end code independently dramatically shortens the turnaround time for releasing updates and new features. 

Linx Real-World API Sample

The new API replicates the RealWorld API called Conduit, a Medium.com clone.  Developers can try out the sample project on GitHub to see what it's capable of and even incorporate it into their development workflows.  Alternatively, dig deeper into how we build this API here. 

What Can You Do With the RealWorld API?

The Linx RealWorld API exposes public APIs with the following functionalities:

  • Authenticate users via JWT
  • CRU* users (sign up)
  • CRUD Articles
  • CR*D Comments on articles (no updating required)
  • GET and display paginated lists of articles
  • Favorite articles
  • Follow other users

Database

MySQL cloud database instance is used for data persistence.  The solution is easily interchangeable with other database drivers. We've provided a database set-up script that can easily be run to install the RealWorld database. In addition,  Linx encrypts passwords before they are stored in the database for protection.  

Try Out the Real-World API

OpenAPI

Providing an OpenAPI specification for the Linx RealWorld REST API will allow faster, easier development using the tools and workflows you are accustomed to.  Try the live demo of the swagger documentation API (generated by Linx).

API endpoints for Conduit

Query the API With Postman

Now let's see how to query the data. We're going to use Postman to make our API calls. 

  1. In Postman, import the collection and variables. 
  2. The endpoints point to the demo server, https://demo.api.linx.twenty57.net/realworld/swagger/index.html?url=/realworld/documentation/openapi.json
  3. Start by registering a new user. This will generate a token that needs to be passed into specific functions.  The token will automatically be saved in the global variable for further use.

Summary

APIs make it possible to create lightweight applications which can quickly adapt and traverse the rapidly changing ecosystem of web software. With the right tools, API development and management can become a seamless part of your development process and enable you and your clients to remain agile in today's competitive environment.

Building them can mean spending a couple of hours using a low-code platform or months of work using many tools. On the other hand, hosting them can be as simple as using one platform that does everything we need or as complex as setting up and managing ingress control, security, caching, failover, metrics, scaling, etc. 

Learning how to build an API turns regular developers into digital superheroes. Today, you don't need to be an experienced developer to build complex applications using high-performance parts with the minimum of effort and, if you use the right tools, the minimum of code.

How Did We Do It?

See a deep dive into the journey of how we created the Conduit API in low-code.

API Cloud database LINX (IPC)

Opinions expressed by DZone contributors are their own.

Popular on DZone

  • Ultra-Fast Microservices: When Microstream Meets Wildfly
  • Ultra-Fast Microservices: When Microstream Meets Payara
  • Comprehensive Guide to Jenkins Declarative Pipeline [With Examples]
  • A Developer Evangelist's Thoughts on Angular 2

Comments

Web Dev Partner Resources

X

ABOUT US

  • About DZone
  • Send feedback
  • Careers
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • MVB Program
  • Become a Contributor
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 600 Park Offices Drive
  • Suite 300
  • Durham, NC 27709
  • support@dzone.com
  • +1 (919) 678-0300

Let's be friends:

DZone.com is powered by 

AnswerHub logo