BrainstormRouter Budget API
The budget API from BrainstormRouter — 15 operation(s) for budget.
The budget API from BrainstormRouter — 15 operation(s) for budget.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/brainstormrouter-com:brainstormrouter-com-budget-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: BrainstormRouter Budget API
version: 1.0.0
description: 'Autonomous AI API Engine — multi-tenant gateway that intelligently routes
AI traffic across providers with built-in memory, cost optimization, and
autonomous background processing.
All `/v1/*` endpoints require an API key via `Authorization: Bearer `.'
contact:
name: BrainstormRouter
url: https://brainstormrouter.com
license:
name: Proprietary
identifier: LicenseRef-Proprietary
servers:
- url: https://api.brainstormrouter.com
description: Production
security:
- BearerAuth: []
tags:
- name: Budget
paths:
/auth/budget/agents:
get:
operationId: authBudgetAgentsList
summary: Agent budget configs + leaderboard
tags:
- Budget
x-br-capability-id: auth.budget.agents.list
x-br-version: v1
responses:
'200':
description: Success
content:
application/json:
schema:
$schema: http://json-schema.org/draft-07/schema#
type: object
propertyNames:
type: string
additionalProperties: {}
security:
- SupabaseJwt: []
/auth/budget/agents/{agentId}:
put:
operationId: authBudgetAgentsPut
summary: Configure a per-agent budget
tags:
- Budget
x-br-capability-id: auth.budget.agents.put
x-br-version: v1
parameters:
- name: agentId
in: path
required: true
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
$schema: http://json-schema.org/draft-07/schema#
type: object
properties:
perConversationUsd:
type: number
perHourUsd:
type: number
perDayUsd:
type: number
downgradeModel:
type: string
exhaustionAction:
type: string
enum:
- downgrade
- stop
required: []
additionalProperties: false
responses:
'200':
description: Success
content:
application/json:
schema:
$schema: http://json-schema.org/draft-07/schema#
type: object
propertyNames:
type: string
additionalProperties: {}
security:
- SupabaseJwt: []
/auth/budget/alerts/config:
get:
operationId: authBudgetAlertsConfigGet
summary: Budget alert thresholds + webhook config
tags:
- Budget
x-br-capability-id: auth.budget.alerts.config.get
x-br-version: v1
responses:
'200':
description: Success
content:
application/json:
schema:
$schema: http://json-schema.org/draft-07/schema#
type: object
propertyNames:
type: string
additionalProperties: {}
security:
- SupabaseJwt: []
put:
operationId: authBudgetAlertsConfigPut
summary: Update budget alert configuration
tags:
- Budget
x-br-capability-id: auth.budget.alerts.config.put
x-br-version: v1
requestBody:
required: true
content:
application/json:
schema:
$schema: http://json-schema.org/draft-07/schema#
type: object
properties:
thresholds:
type: array
items:
type: number
webhookUrl:
anyOf:
- type: string
- type: 'null'
enabled:
type: boolean
additionalProperties: false
responses:
'200':
description: Success
content:
application/json:
schema:
$schema: http://json-schema.org/draft-07/schema#
type: object
propertyNames:
type: string
additionalProperties: {}
security:
- SupabaseJwt: []
/auth/budget/alerts/history:
get:
operationId: authBudgetAlertsHistory
summary: Recent budget alert events
tags:
- Budget
x-br-capability-id: auth.budget.alerts.history
x-br-version: v1
parameters:
- name: limit
in: query
required: false
schema:
type: string
responses:
'200':
description: Success
content:
application/json:
schema:
$schema: http://json-schema.org/draft-07/schema#
type: object
propertyNames:
type: string
additionalProperties: {}
security:
- SupabaseJwt: []
/auth/budget/forecast:
get:
operationId: authBudgetForecast
summary: Budget forecast + anomaly detection from the last 30 days of spend
tags:
- Budget
x-br-capability-id: auth.budget.forecast
x-br-version: v1
responses:
'200':
description: Success
content:
application/json:
schema:
$schema: http://json-schema.org/draft-07/schema#
type: object
propertyNames:
type: string
additionalProperties: {}
security:
- SupabaseJwt: []
/auth/budget/limits:
get:
operationId: authBudgetLimitsGet
summary: Tenant budget limits (daily + monthly)
tags:
- Budget
x-br-capability-id: auth.budget.limits.get
x-br-version: v1
responses:
'200':
description: Success
content:
application/json:
schema:
$schema: http://json-schema.org/draft-07/schema#
type: object
propertyNames:
type: string
additionalProperties: {}
security:
- SupabaseJwt: []
put:
operationId: authBudgetLimitsPut
summary: 'Update tenant budget limits (merge: null clears, undefined leaves)'
tags:
- Budget
x-br-capability-id: auth.budget.limits.put
x-br-version: v1
requestBody:
required: true
content:
application/json:
schema:
$schema: http://json-schema.org/draft-07/schema#
type: object
properties:
dailyLimitUsd:
anyOf:
- type: number
minimum: 0
- type: 'null'
monthlyLimitUsd:
anyOf:
- type: number
minimum: 0
- type: 'null'
additionalProperties: false
responses:
'200':
description: Success
content:
application/json:
schema:
$schema: http://json-schema.org/draft-07/schema#
type: object
propertyNames:
type: string
additionalProperties: {}
security:
- SupabaseJwt: []
/auth/budget/status:
get:
operationId: authBudgetStatus
summary: Tenant-level budget status (daily + monthly spent vs. limits)
tags:
- Budget
x-br-capability-id: auth.budget.status
x-br-version: v1
responses:
'200':
description: Success
content:
application/json:
schema:
$schema: http://json-schema.org/draft-07/schema#
type: object
propertyNames:
type: string
additionalProperties: {}
security:
- SupabaseJwt: []
/v1/budget:
get:
operationId: systemBudgetRoot
summary: Alias of /v1/budget/status served at the bare /v1/budget path
tags:
- Budget
x-br-capability-id: system.budget.root
x-br-version: v1
responses:
'200':
description: Success
content:
application/json:
schema:
$schema: http://json-schema.org/draft-07/schema#
type: object
propertyNames:
type: string
additionalProperties: {}
security:
- BearerAuth: []
/v1/budget/agents:
get:
operationId: systemBudgetListAgents
summary: List per-agent budget configurations and current status
tags:
- Budget
x-br-capability-id: system.budget.listAgents
x-br-version: v1
responses:
'200':
description: Success
content:
application/json:
schema:
$schema: http://json-schema.org/draft-07/schema#
type: object
propertyNames:
type: string
additionalProperties: {}
security:
- BearerAuth: []
/v1/budget/agents/{agentId}:
put:
operationId: systemBudgetSetAgent
summary: Set budget configuration for a specific agent
tags:
- Budget
x-br-capability-id: system.budget.setAgent
x-br-version: v1
requestBody:
required: true
content:
application/json:
schema:
$schema: http://json-schema.org/draft-07/schema#
type: object
properties:
perConversationUsd:
type: number
perHourUsd:
type: number
perDayUsd:
type: number
downgradeModel:
type: string
exhaustionAction:
type: string
enum:
- downgrade
- stop
additionalProperties: false
responses:
'200':
description: Success
content:
application/json:
schema:
$schema: http://json-schema.org/draft-07/schema#
type: object
propertyNames:
type: string
additionalProperties: {}
security:
- BearerAuth: []
/v1/budget/alerts/config:
get:
operationId: systemBudgetAlertsConfigGet
summary: Get current budget alert configuration
tags:
- Budget
x-br-capability-id: system.budget.alertsConfigGet
x-br-version: v1
responses:
'200':
description: Success
content:
application/json:
schema:
$schema: http://json-schema.org/draft-07/schema#
type: object
propertyNames:
type: string
additionalProperties: {}
security:
- BearerAuth: []
put:
operationId: systemBudgetAlertsConfigSet
summary: Update budget alert configuration (thresholds, webhook, enabled)
tags:
- Budget
x-br-capability-id: system.budget.alertsConfigSet
x-br-version: v1
requestBody:
required: true
content:
application/json:
schema:
$schema: http://json-schema.org/draft-07/schema#
type: object
properties:
thresholds:
type: array
items:
type: number
minimum: 1
maximum: 100
webhookUrl:
anyOf:
- type: string
- type: 'null'
enabled:
type: boolean
additionalProperties: false
responses:
'200':
description: Success
content:
application/json:
schema:
$schema: http://json-schema.org/draft-07/schema#
type: object
propertyNames:
type: string
additionalProperties: {}
security:
- BearerAuth: []
/v1/budget/alerts/history:
get:
operationId: systemBudgetAlertsHistory
summary: Recent budget alert events for the tenant
tags:
- Budget
x-br-capability-id: system.budget.alertsHistory
x-br-version: v1
responses:
'200':
description: Success
content:
application/json:
schema:
$schema: http://json-schema.org/draft-07/schema#
type: object
propertyNames:
type: string
additionalProperties: {}
security:
- BearerAuth: []
/v1/budget/forecast:
get:
operationId: systemBudgetForecast
summary: Spend forecast, projected depletion date, anomaly detection
tags:
- Budget
x-br-capability-id: system.budget.forecast
x-br-version: v1
responses:
'200':
description: Success
content:
application/json:
schema:
$schema: http://json-schema.org/draft-07/schema#
type: object
propertyNames:
type: string
additionalProperties: {}
security:
- BearerAuth: []
/v1/budget/limits:
put:
operationId: systemBudgetSetLimits
summary: Update tenant-level daily and monthly budget limits
tags:
- Budget
x-br-capability-id: system.budget.setLimits
x-br-version: v1
requestBody:
required: true
content:
application/json:
schema:
$schema: http://json-schema.org/draft-07/schema#
type: object
properties:
daily_limit_usd:
anyOf:
- type: number
exclusiveMinimum: 0
- type: 'null'
monthly_limit_usd:
anyOf:
- type: number
exclusiveMinimum: 0
- type: 'null'
additionalProperties: false
responses:
'200':
description: Success
content:
application/json:
schema:
$schema: http://json-schema.org/draft-07/schema#
type: object
propertyNames:
type: string
additionalProperties: {}
security:
- BearerAuth: []
/v1/budget/status:
get:
operationId: systemBudgetStatus
summary: Current tenant + key spend against daily/monthly limits
tags:
- Budget
x-br-capability-id: system.budget.status
x-br-version: v1
responses:
'200':
description: Success
content:
application/json:
schema:
$schema: http://json-schema.org/draft-07/schema#
type: object
propertyNames:
type: string
additionalProperties: {}
security:
- BearerAuth: []
components:
securitySchemes:
BearerAuth:
type: http
scheme: bearer
description: API key (e.g. `br_live_...`)
SupabaseJWT:
type: http
scheme: bearer
description: Supabase JWT token (dashboard auth)