Passer au contenu principal

Documentation Index

Fetch the complete documentation index at: https://docs.hybridbox.io/llms.txt

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

Facturation

Consulter les résumés de facturation, factures, transactions et opérations de forfait. Les exemples utilisent le mode code A2A. MCP expose le même mode code via son outil execute.

Fonctions

billing.current_plan.get

billing.current_plan.get(account_id: str) -> BillingResult
Facturation: billing.current_plan.get.
PropriétéValeurPropriétéValeur
Autorisation requisebilling.viewAuthentification requiseoui
Mode d’exécutionsyncCapacitébilling.view
Type de ressourceaccountChamp d’ID de ressourceaccount_id
Route API publiqueGET /v1/public/accounts/{account_id}/billing/current-plan
NomTypeRequis
account_idstroui
ChampTypeRequis
billing_periodstroui
currencystroui
plan_idstroui
plan_namestroui
pricestroui
statusstroui
can_cancel_planboolnon
can_change_planboolnon
Requête:
{
  "request_id": "example",
  "session_id": "session_123",
  "code": "billing.current_plan.get(account_id=\"3c90c3cc-0d44-4b50-8888-8dd25736052a\")"
}
Réponse:
{
  "request_id": "example",
  "status": "completed",
  "result": {
    "last_value": true
  },
  "responses": [
    {
      "index": 0,
      "function": "billing.current_plan.get",
      "status": "completed",
      "result": true
    }
  ],
  "complexity_score": 1
}
Requête:
{
  "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\")"
    }
  }
}
Réponse:
{
  "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]
Facturation: billing.invoices.list.
PropriétéValeurPropriétéValeur
Autorisation requisebilling.viewAuthentification requiseoui
Mode d’exécutionsyncCapacitébilling.view
Type de ressourceaccountChamp d’ID de ressourceaccount_id
Route API publiqueGET /v1/public/accounts/{account_id}/billing/invoices
NomTypeRequis
account_idstroui
pageintnon
page_sizeintnon
ChampTypeRequis
items[{"amount": str, "currency": str, "date": str, "download_url": str | null, "id": str, "status": str}]oui
pageintoui
page_sizeintoui
totalintoui
Requête:
{
  "request_id": "example",
  "session_id": "session_123",
  "code": "billing.invoices.list(account_id=\"3c90c3cc-0d44-4b50-8888-8dd25736052a\", page=123, page_size=123)"
}
Réponse:
{
  "request_id": "example",
  "status": "completed",
  "result": {
    "last_value": "<string>"
  },
  "responses": [
    {
      "index": 0,
      "function": "billing.invoices.list",
      "status": "completed",
      "result": "<string>"
    }
  ],
  "complexity_score": 1
}
Requête:
{
  "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)"
    }
  }
}
Réponse:
{
  "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
Facturation: billing.plan.cancel.
PropriétéValeurPropriétéValeur
Autorisation requisebilling.manageAuthentification requiseoui
Mode d’exécutionsyncCapacitébilling.manage
Type de ressourceaccountChamp d’ID de ressourceaccount_id
Route API publiquePOST /v1/public/accounts/{account_id}/billing/cancel-plan
NomTypeRequis
account_idstroui
cancel_at_period_endboolnon
cancel_immediatelyboolnon
ChampTypeRequis
statusstroui
account_statusstr | nullnon
effective_atstr | nullnon
eligiblebool | nullnon
previous_plan_idstr | nullnon
target_plan_idstr | nullnon
Requête:
{
  "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)"
}
Réponse:
{
  "request_id": "example",
  "status": "completed",
  "result": {
    "last_value": "<string>"
  },
  "responses": [
    {
      "index": 0,
      "function": "billing.plan.cancel",
      "status": "completed",
      "result": "<string>"
    }
  ],
  "complexity_score": 1
}
Requête:
{
  "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)"
    }
  }
}
Réponse:
{
  "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
Facturation: billing.plan.change.
PropriétéValeurPropriétéValeur
Autorisation requisebilling.manageAuthentification requiseoui
Mode d’exécutionsyncCapacitébilling.manage
Type de ressourceaccountChamp d’ID de ressourceaccount_id
Route API publiquePOST /v1/public/accounts/{account_id}/billing/change-plan
NomTypeRequis
account_idstroui
plan_id"smtp_per_mailbox" | "smtp_per_proxy"oui
effective_datestr | nullnon
ChampTypeRequis
statusstroui
account_statusstr | nullnon
effective_atstr | nullnon
eligiblebool | nullnon
previous_plan_idstr | nullnon
target_plan_idstr | nullnon
Requête:
{
  "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>\")"
}
Réponse:
{
  "request_id": "example",
  "status": "completed",
  "result": {
    "last_value": "<string>"
  },
  "responses": [
    {
      "index": 0,
      "function": "billing.plan.change",
      "status": "completed",
      "result": "<string>"
    }
  ],
  "complexity_score": 1
}
Requête:
{
  "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>\")"
    }
  }
}
Réponse:
{
  "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]
Facturation: billing.transactions.list.
PropriétéValeurPropriétéValeur
Autorisation requisebilling.viewAuthentification requiseoui
Mode d’exécutionsyncCapacitébilling.view
Type de ressourceaccountChamp d’ID de ressourceaccount_id
Route API publiqueGET /v1/public/accounts/{account_id}/billing/transactions
NomTypeRequis
account_idstroui
pageintnon
page_sizeintnon
ChampTypeRequis
pageintoui
page_sizeintoui
totalintoui
items[{"amount": str, "currency": str, "direction": str, "effective_at": str, "status": str, "transaction_id": str, "type": str, "balance_after"?: str | null, "description"?: str | null}]non
Requête:
{
  "request_id": "example",
  "session_id": "session_123",
  "code": "billing.transactions.list(account_id=\"3c90c3cc-0d44-4b50-8888-8dd25736052a\", page=123, page_size=123)"
}
Réponse:
{
  "request_id": "example",
  "status": "completed",
  "result": {
    "last_value": 123
  },
  "responses": [
    {
      "index": 0,
      "function": "billing.transactions.list",
      "status": "completed",
      "result": 123
    }
  ],
  "complexity_score": 1
}
Requête:
{
  "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)"
    }
  }
}
Réponse:
{
  "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
Facturation: billing.wallet_balance.get.
PropriétéValeurPropriétéValeur
Autorisation requisebilling.viewAuthentification requiseoui
Mode d’exécutionsyncCapacitébilling.view
Type de ressourceaccountChamp d’ID de ressourceaccount_id
Route API publiqueGET /v1/public/accounts/{account_id}/billing/wallet-balance
NomTypeRequis
account_idstroui
ChampTypeRequis
accrued_chargesstroui
balancestroui
currencystroui
net_balancestroui
Requête:
{
  "request_id": "example",
  "session_id": "session_123",
  "code": "billing.wallet_balance.get(account_id=\"3c90c3cc-0d44-4b50-8888-8dd25736052a\")"
}
Réponse:
{
  "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
}
Requête:
{
  "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\")"
    }
  }
}
Réponse:
{
  "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
  }
}