API Builder
Define your REST API in a simple JSON format, and API Builder generates production-quality client libraries, server stubs, and documentation — so your team ships faster.
1 Intuitive API Design
Describe your service in api.json — a clean JSON format that guides you toward well-structured REST APIs through convention over configuration.
Also supports Swagger 2.0 and Avro IDL as input formats.
See the API Builder API spec for a real-world example.
2 Generated Client Libraries
Download native client libraries with minimal dependencies. Each is a single, readable file that drops straight into your project.
Ruby
client = MyService::Client.new("http://localhost:8000")
organizations = client.organizations.get(:limit => 10, :offset => 0)
organizations.each do |org|
puts "Org %s is named %s" % [org.id, org.name]
end
neworg = client.organizations.post(:name => "My org")
puts "Created new org named %s" % neworg.name Scala
val client = new io.apibuilder.api.v0.Client("http://localhost:8000")
val organizations = client.organizations.get(limit = 10, offset = 0)
organizations.foreach { org =>
println(s"Org ${org.name} is named ${org.id}")
}
val neworg = client.organizations.post(name = "My org")
println(s"Created new org named ${neworg.name}")3 Explore More
- Code generators — Scala, Java, TypeScript, Go, Ruby, and more
- Why API Builder? — What makes it different
- Examples — Real-world API specifications
Ready to define your first API?
Get Started