API Maker

The framework for AI era

Team & delivery

Developer Tools

Swagger docs, TypeScript types, code snippets, a debugger and code search, built into API Maker.

Everything around the APIs is there too. Each API user gets Swagger docs of the APIs it may call, your schemas become TypeScript interfaces for your code, the API testing page writes client code in 21 languages, and you can debug custom code with breakpoints, search all your code at once, or edit it in your own editor.

How it works

  1. Try any API on the API testing page.

    Pick an API, get a sample payload, set headers and send it. Save the request as a state to run it again later.

  2. Copy the client code.

    The same request as code for cURL, JavaScript, Node.js, Python, Java, Go, C#, PHP, Swift, Dart and more.

  3. Share docs with the API user.

    Turn on Swagger docs for an API user and share its URL. It lists only the APIs its groups allow. Turn them off and the URL stops answering.

  4. Debug when something is off.

    Enable debugging, attach Chrome DevTools to the sandbox and stop on breakpoints in your TypeScript.

What you get

Swagger per API user

Each API user can have a Swagger URL with a random part. The docs list the system, custom and database APIs that user can call, and the URL answers only while Swagger docs are on for it.

Interfaces from schemas

Your table schemas become TypeScript interfaces, grouped by instance and database, and your code imports them from db-interfaces.

API testing page

Every API of the account in one place: sample payloads, headers, tokens of test users, the response, and saved states that go to Git.

Code finder

Search a word in all your code at once: custom APIs, hooks, events, schedulers, migrations, utility classes, schemas, secrets and more, and edit it from the results.

Your own editor

localClient.js in your Git repository syncs your files with API Maker both ways, with a sync token from your profile.

Logs and notes

Read the console output of your code and of the native process from the panel, and keep notes for the team inside API Maker.

An example

Hand over an API to a partner

Create an API user for the partner, give its group the three APIs it needs, and enable its Swagger docs. The partner gets a URL that documents exactly those three APIs, and copies client code for its own language from them.

Typed code with the generated interfacescustom-api.ts
import * as T from 'types';import * as db from 'db-interfaces';async function main(g: T.IAMGlobal) {    const products = await g.sys.db.getAll<db.shop.main.Products>({        instance: 'shop', database: 'main', collection: 'products',    });    return products.map(p => p.name); // p is typed}module.exports = main;

The interface names follow your instances, databases and tables: open Generated Interfaces to see yours.

Settings of the local clientlocal-client.config.js
module.exports = () => {    return {        webSocketURL: 'wss://ws.example.com', // WebSocket URL of your API Maker        syncToken: '…', // generate it in your user profile        adminUserPath: 'admin',    };};

Good to know

  • The debugger works for code that runs in the sandbox, not for code that runs on the native process.
  • Open debugging ports to the internet only through an SSH tunnel: the debug settings show the command.

Questions

Which languages do snippets support?

C, C#, cURL, Dart, Go, HTTP, Java, JavaScript, Kotlin, Node.js, Objective-C, OCaml, PHP, Postman CLI, PowerShell, Python, R, Ruby, Rust, Shell and Swift, with their variants.

Can I run API Maker on my computer?

Yes. API Maker Local Run is a desktop app for macOS, Windows and Linux: it installs and runs API Maker, with MongoDB, Redis and your databases in Docker. Get it from the download page.