Billing
Create billing plan
POST
/api/billing/projects/{projectId}/plansSDK setup
Create a client and set credentials (JWT and/or API key) before calling the API. Match the authentication type shown above.
import { Configuration, BillingApi } from 'mudbase-sdk';
const configuration = new Configuration({
basePath: 'https://cloud.mudbase.dev',
accessToken: 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJ1c3JfbW9yZ2FuX2RlIiwiZW1haWwiOiJtb3JnYW4uY2hlbkBub3J0aHdpbmQuZGV2IiwiZXhwIjoxODI1MTI5NjAwfQ.doc_preview_sig',
});
const billing = new BillingApi(configuration);import { Configuration, BillingApi } from 'mudbase-sdk';
const configuration = new Configuration({
basePath: 'https://cloud.mudbase.dev',
accessToken: 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJ1c3JfbW9yZ2FuX2RlIiwiZW1haWwiOiJtb3JnYW4uY2hlbkBub3J0aHdpbmQuZGV2IiwiZXhwIjoxODI1MTI5NjAwfQ.doc_preview_sig',
});
const billing = new BillingApi(configuration);Example request
Call this endpoint using the client from SDK setup. Use View HTTP for a raw cURL example.
const { data: result } = await billing.createPlan(
"proj_ihezCsznGwTK",
{
name: "Jeanne Armstrong",
description: "New cyan Bacon with ergonomic design for crooked comfort",
price: 329.25,
currency: "LRD",
interval: "circuit compress",
features: "protocol connect",
limits: "alarm navigate",
trial: "feed generate",
isActive: true,
isDefault: true,
sortOrder: 821.42,
metadata: "matrix index"
}
);const { data: result } = await billing.createPlan(
"proj_ihezCsznGwTK",
{
name: "Jeanne Armstrong",
description: "New cyan Bacon with ergonomic design for crooked comfort",
price: 329.25,
currency: "LRD",
interval: "circuit compress",
features: "protocol connect",
limits: "alarm navigate",
trial: "feed generate",
isActive: true,
isDefault: true,
sortOrder: 821.42,
metadata: "matrix index"
}
);Playground
liveTest this endpoint with your own credentials. Your requests will be sent to the live API.
Use the auth endpoints to obtain a JWT.
No Request Yet
Send a request to see the full inspector
Authentication
Requires JWT
Note
Include your JWT in the
Authorization: Bearer YOUR_TOKEN header (user-facing apps, RBAC). View authentication guide →Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
projectId | string | Yes | — |
Request Body
json
{
"name": "Johnathan Torp I",
"description": "Introducing the French Polynesia-inspired Towels, blending amazing style with local craftsmanship",
"price": 767.85,
"currency": "USD",
"interval": "month",
"features": [
{}
],
"limits": {
"apiCalls": 805.06,
"storage": 920.65,
"bandwidth": 190.7,
"users": 337.43,
"customLimits": [
{
"name": "Gladyce O'Connell",
"value": 890.2
}
]
},
"trial": {
"enabled": false,
"days": 563.77
},
"isActive": true,
"isDefault": false,
"sortOrder": 694.05,
"metadata": {}
}{
"name": "Johnathan Torp I",
"description": "Introducing the French Polynesia-inspired Towels, blending amazing style with local craftsmanship",
"price": 767.85,
"currency": "USD",
"interval": "month",
"features": [
{}
],
"limits": {
"apiCalls": 805.06,
"storage": 920.65,
"bandwidth": 190.7,
"users": 337.43,
"customLimits": [
{
"name": "Gladyce O'Connell",
"value": 890.2
}
]
},
"trial": {
"enabled": false,
"days": 563.77
},
"isActive": true,
"isDefault": false,
"sortOrder": 694.05,
"metadata": {}
}Responses
201Plan created
json
{
"message": "Plan created successfully",
"plan": {
"_id": "65a1b2c3d4e5f6789012345d",
"name": "Pro Plan",
"description": "Professional plan with advanced features",
"price": 29.99,
"currency": "USD",
"interval": "month",
"features": [
"Unlimited API calls",
"Priority support"
]
}
}{
"message": "Plan created successfully",
"plan": {
"_id": "65a1b2c3d4e5f6789012345d",
"name": "Pro Plan",
"description": "Professional plan with advanced features",
"price": 29.99,
"currency": "USD",
"interval": "month",
"features": [
"Unlimited API calls",
"Priority support"
]
}
}400—
401—
Errors
| Code | Meaning |
|---|---|
400 | — |
401 | — |