MMontra

DEVELOPER API

Build on top of
Montra.

A clean REST API to programmatically manage budgets, log expenses, and listen for real-time financial events in your own apps.

~ montra-api
$ npm install @montra/sdk

$ export EXPENSE_API_KEY="sk_live_..."

$ node -e "
  const et = require('@montra/sdk');
  const c = new et({ apiKey: process.env.EXPENSE_API_KEY });
  c.budgets.list().then(console.log);
"

[
  { id: 'bgt_abc123', name: 'Groceries', limit: 200 },
  { id: 'bgt_def456', name: 'Transport', limit: 80  },
]

REST & Webhooks

Clean RESTful endpoints + real-time webhook events for budget and threshold alerts.

Secure by Default

Bearer token auth, HTTPS-only, scoped API keys with read/write permission control.

Versioned API

Stable /v1 with a clear deprecation policy — we never silently break integrations.

Full Docs

Interactive explorer, SDK guides, and runnable examples for every endpoint.

QUICKSTART

Up and running in 5 minutes.

Choose your language and run the example below.

node.js
import Montra from '@montra/sdk';

const client = new Montra({
  apiKey: process.env.EXPENSE_API_KEY,
});

// Fetch all budgets
const budgets = await client.budgets.list();

// Log an expense
const expense = await client.expenses.create({
  budgetId: 'bgt_abc123',
  name:      'Grocery run',
  amount:    42.50,
  date:      new Date().toISOString(),
});

console.log(expense.id); // exp_xyz789
Get your API key Business plan required for API access.

API REFERENCE

Endpoint reference.

Base URL: https://api.montra.app/v1

GET/v1/budgetsList all budgets for the authenticated user
POST/v1/budgetsCreate a new budget with name, amount, and category
GET/v1/budgets/:idRetrieve a single budget by ID
PUT/v1/budgets/:idUpdate budget name or spending limit
DELETE/v1/budgets/:idDelete a budget and all linked expenses
GET/v1/expensesList expenses, filterable by budget or date range
POST/v1/expensesLog a new expense linked to a budget
DELETE/v1/expenses/:idRemove a specific expense entry