Skip to main content

Documentation Index

Fetch the complete documentation index at: https://hybridbox.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

Billing

Review billing summaries, invoices, transactions, and plan operations. The examples use A2A code mode. MCP exposes the same code mode through its execute tool.

Functions

billing.current_plan.get

billing.current_plan.get(account_id: str) -> BillingResult
Get the current billing plan.
PropertyValuePropertyValue
Requires permissionbilling.viewAuth requiredyes
Execution modesyncCapabilitybilling.view
Resource typeaccountResource ID fieldaccount_id
Public API routeGET /v1/public/accounts/{account_id}/billing/current-plan
NameTypeRequiredDescription
account_idstryesAccount UUID from the route path
FieldTypeRequiredDescription
billing_periodstryesBilling period for the current plan
currencystryesBilling currency code
plan_idstryesCurrent billing plan ID
plan_namestryesCurrent billing plan name
pricestryesCurrent plan price
statusstryesCurrent plan status
can_cancel_planboolnoWhether the plan can be cancelled
can_change_planboolnoWhether the plan can be changed
Request:
{
  "request_id": "example",
  "session_id": "session_123",
  "code": "billing.current_plan.get(account_id=\"3c90c3cc-0d44-4b50-8888-8dd25736052a\")"
}
Response:
{
  "request_id": "example",
  "status": "completed",
  "result": {
    "last_value": true
  },
  "responses": [
    {
      "index": 0,
      "function": "billing.current_plan.get",
      "status": "completed",
      "result": true
    }
  ],
  "complexity_score": 1
}
Request:
{
  "jsonrpc": "2.0",
  "id": "example",
  "method": "tools/call",
  "params": {
    "name": "hybridbox_execute",
    "arguments": {
      "code": "billing.current_plan.get(account_id=\"3c90c3cc-0d44-4b50-8888-8dd25736052a\")"
    }
  }
}
Response:
{
  "jsonrpc": "2.0",
  "id": "example",
  "result": {
    "content": [
      {
        "type": "text",
        "text": "{\n  \"request_id\": \"example\",\n  \"status\": \"completed\",\n  \"result\": {\n    \"last_value\": true\n  },\n  \"responses\": [\n    {\n      \"index\": 0,\n      \"function\": \"billing.current_plan.get\",\n      \"status\": \"completed\",\n      \"result\": true\n    }\n  ],\n  \"complexity_score\": 1\n}"
      }
    ],
    "isError": false
  }
}

billing.invoices.list

billing.invoices.list(account_id: str, page?: int, page_size?: int) -> Page[BillingResult]
List billing invoices.
PropertyValuePropertyValue
Requires permissionbilling.viewAuth requiredyes
Execution modesyncCapabilitybilling.view
Resource typeaccountResource ID fieldaccount_id
Public API routeGET /v1/public/accounts/{account_id}/billing/invoices
NameTypeRequiredDescription
account_idstryesAccount UUID from the route path
pageintnoOne-based billing page number
page_sizeintnoMaximum billing records per page
FieldTypeRequiredDescription
items[{"amount": str, "currency": str, "date": str, "download_url": str | null, "id": str, "status": str}]yesInvoices on this page
pageintyesCurrent one-based page number
page_sizeintyesMaximum items per page
totalintyesTotal matching invoices
Request:
{
  "request_id": "example",
  "session_id": "session_123",
  "code": "billing.invoices.list(account_id=\"3c90c3cc-0d44-4b50-8888-8dd25736052a\", page=123, page_size=123)"
}
Response:
{
  "request_id": "example",
  "status": "completed",
  "result": {
    "last_value": "<string>"
  },
  "responses": [
    {
      "index": 0,
      "function": "billing.invoices.list",
      "status": "completed",
      "result": "<string>"
    }
  ],
  "complexity_score": 1
}
Request:
{
  "jsonrpc": "2.0",
  "id": "example",
  "method": "tools/call",
  "params": {
    "name": "hybridbox_execute",
    "arguments": {
      "code": "billing.invoices.list(account_id=\"3c90c3cc-0d44-4b50-8888-8dd25736052a\", page=123, page_size=123)"
    }
  }
}
Response:
{
  "jsonrpc": "2.0",
  "id": "example",
  "result": {
    "content": [
      {
        "type": "text",
        "text": "{\n  \"request_id\": \"example\",\n  \"status\": \"completed\",\n  \"result\": {\n    \"last_value\": \"<string>\"\n  },\n  \"responses\": [\n    {\n      \"index\": 0,\n      \"function\": \"billing.invoices.list\",\n      \"status\": \"completed\",\n      \"result\": \"<string>\"\n    }\n  ],\n  \"complexity_score\": 1\n}"
      }
    ],
    "isError": false
  }
}

billing.plan.cancel

billing.plan.cancel(account_id: str, cancel_at_period_end?: bool, cancel_immediately?: bool) -> BillingResult
Cancel billing plan.
PropertyValuePropertyValue
Requires permissionbilling.manageAuth requiredyes
Execution modesyncCapabilitybilling.manage
Resource typeaccountResource ID fieldaccount_id
Public API routePOST /v1/public/accounts/{account_id}/billing/cancel-plan
NameTypeRequiredDescription
account_idstryesAccount UUID from the route path
cancel_at_period_endboolnoCancel the plan at the end of the billing period
cancel_immediatelyboolnoCancel the plan immediately
FieldTypeRequiredDescription
statusstryesBilling operation status
account_statusstr | nullnoAccount status after the operation
effective_atstr | nullnoWhen the billing change took effect
eligiblebool | nullnoWhether the account was eligible for the operation
previous_plan_idstr | nullnoPrevious billing plan ID
target_plan_idstr | nullnoTarget billing plan ID
Request:
{
  "request_id": "example",
  "session_id": "session_123",
  "code": "billing.plan.cancel(account_id=\"3c90c3cc-0d44-4b50-8888-8dd25736052a\", cancel_at_period_end=true, cancel_immediately=true)"
}
Response:
{
  "request_id": "example",
  "status": "completed",
  "result": {
    "last_value": "<string>"
  },
  "responses": [
    {
      "index": 0,
      "function": "billing.plan.cancel",
      "status": "completed",
      "result": "<string>"
    }
  ],
  "complexity_score": 1
}
Request:
{
  "jsonrpc": "2.0",
  "id": "example",
  "method": "tools/call",
  "params": {
    "name": "hybridbox_execute",
    "arguments": {
      "code": "billing.plan.cancel(account_id=\"3c90c3cc-0d44-4b50-8888-8dd25736052a\", cancel_at_period_end=true, cancel_immediately=true)"
    }
  }
}
Response:
{
  "jsonrpc": "2.0",
  "id": "example",
  "result": {
    "content": [
      {
        "type": "text",
        "text": "{\n  \"request_id\": \"example\",\n  \"status\": \"completed\",\n  \"result\": {\n    \"last_value\": \"<string>\"\n  },\n  \"responses\": [\n    {\n      \"index\": 0,\n      \"function\": \"billing.plan.cancel\",\n      \"status\": \"completed\",\n      \"result\": \"<string>\"\n    }\n  ],\n  \"complexity_score\": 1\n}"
      }
    ],
    "isError": false
  }
}

billing.plan.change

billing.plan.change(account_id: str, plan_id: "smtp_per_mailbox" | "smtp_per_proxy", effective_date?: str | null) -> BillingResult
Change billing plan.
PropertyValuePropertyValue
Requires permissionbilling.manageAuth requiredyes
Execution modesyncCapabilitybilling.manage
Resource typeaccountResource ID fieldaccount_id
Public API routePOST /v1/public/accounts/{account_id}/billing/change-plan
NameTypeRequiredDescription
account_idstryesAccount UUID from the route path
plan_id"smtp_per_mailbox" | "smtp_per_proxy"yesTarget billing plan ID
effective_datestr | nullnoRequested effective date for the plan change
FieldTypeRequiredDescription
statusstryesBilling operation status
account_statusstr | nullnoAccount status after the operation
effective_atstr | nullnoWhen the billing change took effect
eligiblebool | nullnoWhether the account was eligible for the operation
previous_plan_idstr | nullnoPrevious billing plan ID
target_plan_idstr | nullnoTarget billing plan ID
Request:
{
  "request_id": "example",
  "session_id": "session_123",
  "code": "billing.plan.change(account_id=\"3c90c3cc-0d44-4b50-8888-8dd25736052a\", plan_id=\"3c90c3cc-0d44-4b50-8888-8dd25736052a\", effective_date=\"<string>\")"
}
Response:
{
  "request_id": "example",
  "status": "completed",
  "result": {
    "last_value": "<string>"
  },
  "responses": [
    {
      "index": 0,
      "function": "billing.plan.change",
      "status": "completed",
      "result": "<string>"
    }
  ],
  "complexity_score": 1
}
Request:
{
  "jsonrpc": "2.0",
  "id": "example",
  "method": "tools/call",
  "params": {
    "name": "hybridbox_execute",
    "arguments": {
      "code": "billing.plan.change(account_id=\"3c90c3cc-0d44-4b50-8888-8dd25736052a\", plan_id=\"3c90c3cc-0d44-4b50-8888-8dd25736052a\", effective_date=\"<string>\")"
    }
  }
}
Response:
{
  "jsonrpc": "2.0",
  "id": "example",
  "result": {
    "content": [
      {
        "type": "text",
        "text": "{\n  \"request_id\": \"example\",\n  \"status\": \"completed\",\n  \"result\": {\n    \"last_value\": \"<string>\"\n  },\n  \"responses\": [\n    {\n      \"index\": 0,\n      \"function\": \"billing.plan.change\",\n      \"status\": \"completed\",\n      \"result\": \"<string>\"\n    }\n  ],\n  \"complexity_score\": 1\n}"
      }
    ],
    "isError": false
  }
}

billing.transactions.list

billing.transactions.list(account_id: str, page?: int, page_size?: int) -> Page[BillingResult]
List billing transactions.
PropertyValuePropertyValue
Requires permissionbilling.viewAuth requiredyes
Execution modesyncCapabilitybilling.view
Resource typeaccountResource ID fieldaccount_id
Public API routeGET /v1/public/accounts/{account_id}/billing/transactions
NameTypeRequiredDescription
account_idstryesAccount UUID from the route path
pageintnoOne-based billing page number
page_sizeintnoMaximum billing records per page
FieldTypeRequiredDescription
pageintyesCurrent one-based page number
page_sizeintyesMaximum items per page
totalintyesTotal matching wallet transactions
items[{"amount": str, "currency": str, "direction": str, "effective_at": str, "status": str, "transaction_id": str, "type": str, "balance_after"?: str | null, "description"?: str | null}]noWallet transactions on this page
Request:
{
  "request_id": "example",
  "session_id": "session_123",
  "code": "billing.transactions.list(account_id=\"3c90c3cc-0d44-4b50-8888-8dd25736052a\", page=123, page_size=123)"
}
Response:
{
  "request_id": "example",
  "status": "completed",
  "result": {
    "last_value": 123
  },
  "responses": [
    {
      "index": 0,
      "function": "billing.transactions.list",
      "status": "completed",
      "result": 123
    }
  ],
  "complexity_score": 1
}
Request:
{
  "jsonrpc": "2.0",
  "id": "example",
  "method": "tools/call",
  "params": {
    "name": "hybridbox_execute",
    "arguments": {
      "code": "billing.transactions.list(account_id=\"3c90c3cc-0d44-4b50-8888-8dd25736052a\", page=123, page_size=123)"
    }
  }
}
Response:
{
  "jsonrpc": "2.0",
  "id": "example",
  "result": {
    "content": [
      {
        "type": "text",
        "text": "{\n  \"request_id\": \"example\",\n  \"status\": \"completed\",\n  \"result\": {\n    \"last_value\": 123\n  },\n  \"responses\": [\n    {\n      \"index\": 0,\n      \"function\": \"billing.transactions.list\",\n      \"status\": \"completed\",\n      \"result\": 123\n    }\n  ],\n  \"complexity_score\": 1\n}"
      }
    ],
    "isError": false
  }
}

billing.wallet_balance.get

billing.wallet_balance.get(account_id: str) -> BillingResult
Get the billing wallet balance.
PropertyValuePropertyValue
Requires permissionbilling.viewAuth requiredyes
Execution modesyncCapabilitybilling.view
Resource typeaccountResource ID fieldaccount_id
Public API routeGET /v1/public/accounts/{account_id}/billing/wallet-balance
NameTypeRequiredDescription
account_idstryesAccount UUID from the route path
FieldTypeRequiredDescription
accrued_chargesstryesUnbilled accrued charges
balancestryesCurrent wallet balance
currencystryesWallet currency code
net_balancestryesWallet balance after accrued charges
Request:
{
  "request_id": "example",
  "session_id": "session_123",
  "code": "billing.wallet_balance.get(account_id=\"3c90c3cc-0d44-4b50-8888-8dd25736052a\")"
}
Response:
{
  "request_id": "example",
  "status": "completed",
  "result": {
    "last_value": {
      "accrued_charges": "<string>",
      "balance": "<string>",
      "currency": "<string>",
      "net_balance": "<string>"
    }
  },
  "responses": [
    {
      "index": 0,
      "function": "billing.wallet_balance.get",
      "status": "completed",
      "result": {
        "accrued_charges": "<string>",
        "balance": "<string>",
        "currency": "<string>",
        "net_balance": "<string>"
      }
    }
  ],
  "complexity_score": 1
}
Request:
{
  "jsonrpc": "2.0",
  "id": "example",
  "method": "tools/call",
  "params": {
    "name": "hybridbox_execute",
    "arguments": {
      "code": "billing.wallet_balance.get(account_id=\"3c90c3cc-0d44-4b50-8888-8dd25736052a\")"
    }
  }
}
Response:
{
  "jsonrpc": "2.0",
  "id": "example",
  "result": {
    "content": [
      {
        "type": "text",
        "text": "{\n  \"request_id\": \"example\",\n  \"status\": \"completed\",\n  \"result\": {\n    \"last_value\": {\n      \"accrued_charges\": \"<string>\",\n      \"balance\": \"<string>\",\n      \"currency\": \"<string>\",\n      \"net_balance\": \"<string>\"\n    }\n  },\n  \"responses\": [\n    {\n      \"index\": 0,\n      \"function\": \"billing.wallet_balance.get\",\n      \"status\": \"completed\",\n      \"result\": {\n        \"accrued_charges\": \"<string>\",\n        \"balance\": \"<string>\",\n        \"currency\": \"<string>\",\n        \"net_balance\": \"<string>\"\n      }\n    }\n  ],\n  \"complexity_score\": 1\n}"
      }
    ],
    "isError": false
  }
}