Backend-as-a-service for micro-builders who ship a project a day. Zero config.
Email/password signup, login, sessions, and magic links. Your users authenticate through our API — you get tokens back.
Create, read, update, and delete JSON documents in named collections. No schemas, no migrations — just JSON.
Filter, sort, and paginate with a simple JSON query language. Equality, comparison, and prefix operators built in.
// 1. Sign up your end-users
const res = await fetch("https://marsh.mallo.ws/v1/auth/signup", {
method: "POST",
headers: {
"X-API-Key": "mm_your_api_key",
"Content-Type": "application/json"
},
body: JSON.stringify({
email: "user@example.com",
password: "securepassword"
})
});
const { user, session_token } = await res.json();// 2. Store documents
await fetch("https://marsh.mallo.ws/v1/collections/todos/documents", {
method: "POST",
headers: {
"X-API-Key": "mm_your_api_key",
"Authorization": "Bearer " + session_token,
"Content-Type": "application/json"
},
body: JSON.stringify({
title: "Ship it",
done: false
})
});// 3. Query documents
const res = await fetch("https://marsh.mallo.ws/v1/collections/todos/query", {
method: "POST",
headers: {
"X-API-Key": "mm_your_api_key",
"Content-Type": "application/json"
},
body: JSON.stringify({
filter: { done: false },
sort: [{ field: "_createdAt", order: "desc" }],
limit: 20
})
});
const { documents } = await res.json();per month, per account