M3O is a universal public API interface.
Explore, discover and consume public APIs as simpler programmable building blocks all on one platform.
Here are the main features:
- 1️⃣ One Platform - Discover, explore and consume public APIs all in one place.
- ☝️ One Account - Manage your API usage with one account and one token.
- ⚡ One Framework - Learn, develop and integrate using one set of docs and libraries.
So far there are over 60+ APIs. Here are some of the highlights:
- Apps - Serverless app deployment
- Database - Serverless postgres database
- Functions - Serverless lambda functions
- Events - Publish and subscribe to messages
- Users - User management and authentication
- Space - Infinite cloud storage
- Search - Indexing and full text search
- Address - Address lookup by postcode
- Geocoding - Geocode an address to gps location and the reverse.
- Location - Real time GPS location tracking and search
- Places - Search for geographic points of interest
- Routes - Etas, routes and turn by turn directions
- IP2Geo - IP to geolocation lookup
- Email - Send emails in a flash
- Image - Quickly upload, resize, and convert images
- OTP - One time password generation
- QR Codes - QR code generator
- SMS - Send an SMS message
- Weather - Real time weather forecast
See the full list at m3o.com/explore.
- Head to m3o.com and signup for a free account.
- Browse the APIs on the Explore page.
- Call any API using your token in the
Authorization: Bearer [Token]
header - All APIs are available through one endpoint:
https://api.m3o.com/v1/*
. - Use m3o-cli, m3o-js and m3o-go clients for development
Grab your API token from the dashboard and try out helloworld and export it
export M3O_API_TOKEN=xxxxxxx
curl \
-H "Authorization: Bearer $M3O_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"name": "John"}' \
https://api.m3o.com/v1/helloworld/call
Find all the shell examples in m3o-sh
Import packages from go.m3o.com
import (
"go.m3o.com"
"go.m3o.com/helloworld"
)
Create a new client with your API token and call it
client := m3o.New(os.Getenv("M3O_API_TOKEN"))
rsp, err := client.Helloworld.Call(&helloworld.CallRequest{
Name: "John",
})
fmt.Println(rsp, err)
Find all the Go examples in m3o-go
Install the m3o package
npm install m3o
Call helloworld like so
const m3o = require("m3o")(process.env.M3O_API_TOKEN);
// Call returns a personalised "Hello $name" response
async function main() {
let rsp = await m3o.helloworld.call({
name: "John",
});
console.log(rsp);
}
main();
Find more JS examples in m3o-js
Download the m3o-cli
m3o helloworld call --name=Alice
See the examples for more use cases.
- Checkout the Getting Started guide
- Follow us on Twitter for updates
- Join the Discord server
- Read the Blog for content
- See the Docs for more info
Go into apps/web
and run npm install && npm run dev
The site will be available on localhost:3000
Details on self hosting coming soon. See m3o/platform for pulumi automation.