{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-docs/api-reference/sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":["api-container","api-content","endpoint","api-examples","code-group","tabs","tab"]},"redocly_category":"API Reference","searchWeight":120,"type":"markdown"},"seo":{"title":"Get spend limits","description":"Complete API reference and documentation for Freddy AI-powered backend system by Aitronos","llmstxt":{"hide":false,"sections":[{"title":"Table of contents","includeFiles":["**/*"],"excludeFiles":[]}],"excludeFiles":[]}},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"get-spend-limits","__idx":0},"children":["Get spend limits"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Returns the monthly limits on spend for Aitronos servers that apply to you and your organization, this month's spend against them (the organization's spend only for people who may see billing), and every label, help sentence, summary line and input bound to show them with. A client renders what it receives rather than writing its own copy."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["There are four limits, all in CHF per calendar month (UTC):"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Limit"},"children":["Limit"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Set by"},"children":["Set by"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Meaning"},"children":["Meaning"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Organization limit (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["org_limit_chf"]},")"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["manage_billing"]},", with ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/update-organization-limits"},"children":["Change the organization's limits"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The most the whole organization spends on Aitronos servers. Its servers are held to the tighter of this limit and the compute share of the monthly spending limit."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Default per person (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["member_default_chf"]},")"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["manage_billing"]},", with ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/update-organization-limits"},"children":["Change the organization's limits"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Each person's limit unless a limit is set for them."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Limit for one person (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["override_chf"]},")"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["manage_billing"]},", with ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/update-member-limit"},"children":["Set a member's limit"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Replaces the default for that person, higher or lower."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Own limit (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["self_limit_chf"]},")"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["the person, with ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/update-my-limit"},"children":["Set your own limit"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["A lower limit a person holds their own servers to. It can never exceed what the organization allows them."]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["What the organization allows a person is the limit set for them, else the default. The limit a person is held to (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["effective_limit_chf"]},") is the smaller of that and their own limit; when neither is set, no per-person limit applies. The organization's overall monthly spending limit always applies on top of all of them."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["A person's spend is the spend of the Aitronos servers they own, whoever started them. Creating or resuming an Aitronos server is refused with ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/create-host#errors"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["402 FORGE_COMPUTE_SPEND_LIMIT_REACHED"]}]}," when one more hour at the quoted price would pass the organization limit (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["details.reason"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["org_compute_limit_reached"]},") or the owner's limit (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["member_limit_reached"]},"). At 90% of a person's limit each of their running Aitronos servers carries the ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/get-host#returns"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["notice"]}]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["member_limit_90"]},"; at 100% their servers are parked (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["member_limit_parked"]},") or keep running (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["member_limit_100"]},"), as set in the organization's ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/get-settings"},"children":["compute settings"]},". Servers in your own cloud accounts are never limited here: the provider bills them."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Requires a bearer token (or API key) whose principal holds the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["use_forge"]}," capability in the acting organization. It works while Forge cloud compute is switched off, so limits can be read and set before the feature is switched on."]},{"$$mdtype":"Tag","name":"ApiContainer","attributes":{},"children":[{"$$mdtype":"Tag","name":"ApiContent","attributes":{},"children":[{"$$mdtype":"Tag","name":"Endpoint","attributes":{"method":"GET","path":"https://api.aitronos.com/v1/forge/compute/limits"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":4,"id":"query-parameters","__idx":1},"children":["Query Parameters"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["organization_id"]}]}," string ",{"$$mdtype":"Tag","name":"em","attributes":{"style":{"color":"#9ca3af !important","fontWeight":"500 !important","fontStyle":"normal !important"}},"children":["optional"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The organization to act in. Defaults to your current organization. You must be an active member of it, or the request is refused with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["403 ORGANIZATION_ACCESS_DENIED"]},"."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":4,"id":"headers","__idx":2},"children":["Headers"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["X-Organization-Id"]}]}," string ",{"$$mdtype":"Tag","name":"em","attributes":{"style":{"color":"#9ca3af !important","fontWeight":"500 !important","fontStyle":"normal !important"}},"children":["optional"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The same as ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["organization_id"]},", as a header. When both are sent, the query parameter wins."]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"returns","__idx":3},"children":["Returns"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Amounts are CHF strings with two decimals (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["\"12.50\""]},"). A limit of ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["null"]}," is not set; a spend of ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["null"]}," could not be read, never ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["\"0.00\""]}," in its place."]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["currency"]}]}," string — always ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["CHF"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["month"]}]}," string — the UTC calendar month the spend covers, ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["YYYY-MM"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["organization"]}]}," object — the organization's limits and spend:",{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["limit_chf"]}]}," string or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["null"]}," — the organization's own monthly limit for Aitronos servers."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["compute_share_limit_chf"]}]}," string or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["null"]}," — the share of the monthly spending limit set aside for cloud servers, in CHF."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["effective_limit_chf"]}]}," string or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["null"]}," — the tighter of ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["limit_chf"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["compute_share_limit_chf"]},": what the organization's Aitronos servers are held to. ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["null"]}," when only the monthly spending limit applies."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["monthly_limit_chf"]}]}," string — the organization's overall monthly spending limit. It always applies, and no limit here can be set above it."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["member_default_chf"]}]}," string or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["null"]}," — the default monthly limit per person."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["spent_chf"]}]}," string or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["null"]}," — the organization's Aitronos server spend this month. ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["null"]}," when it could not be read, and always ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["null"]}," when ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["can_view_org_spend"]}," is ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["false"]},"."]}]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["me"]}]}," object or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["null"]}," — your own limits; ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["null"]}," for a caller without a person (an organization API key):",{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["user_id"]}]}," string — your user id."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["admin_limit_chf"]}]}," string or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["null"]}," — what your organization allows you: the limit set for you, else the default per person."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["self_limit_chf"]}]}," string or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["null"]}," — the limit you set on yourself."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["effective_limit_chf"]}]}," string or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["null"]}," — the smaller of the two: the limit you are held to. ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["null"]}," means no per-person limit applies."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["limit_source"]}]}," string or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["null"]}," — which limit binds: ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["self"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["override"]}," (set for you by someone who manages billing) or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["default"]},". ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["self"]}," wins a tie, then ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["override"]},". ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["null"]}," with no limit."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["spent_chf"]}]}," string or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["null"]}," — your Aitronos server spend this month."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["remaining_chf"]}]}," string or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["null"]}," — what is left of your limit, never below ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["\"0.00\""]},". ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["null"]}," with no limit or an unknown spend."]}]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["spend_known"]}]}," boolean — ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["false"]}," when a spend reading you may see failed; its ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["spent_chf"]}," is then ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["null"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["summary"]}," says so. The organization's spend counts only when ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["can_view_org_spend"]}," is ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["true"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["can_view_org_spend"]}]}," boolean — whether you may see the organization's spend (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["view_billing"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["manage_billing"]},"). When ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["false"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["organization.spent_chf"]}," is ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["null"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["summary"]}," names only the organization's limit, never its spend."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["can_edit_org_limits"]}]}," boolean — whether you may change the organization limit, the default per person and each person's limit (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["manage_billing"]},")."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["can_edit_own_limit"]}]}," boolean — whether you may set a limit on yourself (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["false"]}," for an organization API key)."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["summary"]}]}," string — one line on spend against the limits, to show as is. Without ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["can_view_org_spend"]}," the organization part reads, for example, \"Your organization's monthly limit for Aitronos servers is CHF 40.00.\" (nothing when the organization has no limit)."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["fields"]}]}," object — the inputs, keyed ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["org_limit_chf"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["member_default_chf"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["member_limit_chf"]}," (the per-person input of the ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/list-member-limits"},"children":["members list"]},"; its ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["value"]}," is always ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["null"]},") and, for a person, ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["self_limit_chf"]},". Each carries ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["label"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["help"]}," (sentences to show), ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["value"]}," (the amount now stored, or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["null"]},"), ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["min"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["max"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["step"]}," (CHF strings) and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["editable"]}," (boolean). ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["max"]}," is the organization's monthly spending limit, and for ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["self_limit_chf"]}," what the organization allows you."]}]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"currency\": \"CHF\",\n  \"month\": \"2026-10\",\n  \"organization\": {\n    \"limit_chf\": \"40.00\",\n    \"compute_share_limit_chf\": null,\n    \"effective_limit_chf\": \"40.00\",\n    \"monthly_limit_chf\": \"80.00\",\n    \"member_default_chf\": \"12.50\",\n    \"spent_chf\": \"3.20\"\n  },\n  \"me\": {\n    \"user_id\": \"usr_7f3a9c2e1b8d4e6fa0c5b3d9e2f1a4c7\",\n    \"admin_limit_chf\": \"12.50\",\n    \"self_limit_chf\": null,\n    \"effective_limit_chf\": \"12.50\",\n    \"limit_source\": \"default\",\n    \"spent_chf\": \"1.66\",\n    \"remaining_chf\": \"10.84\"\n  },\n  \"spend_known\": true,\n  \"can_view_org_spend\": true,\n  \"can_edit_org_limits\": true,\n  \"can_edit_own_limit\": true,\n  \"summary\": \"You have spent CHF 1.66 of your CHF 12.50 monthly limit for Aitronos servers. Your organization has spent CHF 3.20 of its CHF 40.00 monthly limit for Aitronos servers.\",\n  \"fields\": {\n    \"org_limit_chf\": {\n      \"label\": \"Organization limit for Aitronos servers\",\n      \"help\": \"The most your whole organization can spend on Aitronos servers in a calendar month. Leave it empty for no separate limit: the organization's monthly spending limit still applies.\",\n      \"value\": \"40.00\",\n      \"min\": \"0.01\",\n      \"max\": \"80.00\",\n      \"step\": \"0.01\",\n      \"editable\": true\n    },\n    \"member_default_chf\": {\n      \"label\": \"Default limit per person\",\n      \"help\": \"The most each person can spend on Aitronos servers in a calendar month, unless you set a different limit for them. Leave it empty for no default.\",\n      \"value\": \"12.50\",\n      \"min\": \"0.01\",\n      \"max\": \"80.00\",\n      \"step\": \"0.01\",\n      \"editable\": true\n    },\n    \"member_limit_chf\": {\n      \"label\": \"Limit for this person\",\n      \"help\": \"Replaces the default limit for this person. Leave it empty to use the default.\",\n      \"value\": null,\n      \"min\": \"0.01\",\n      \"max\": \"80.00\",\n      \"step\": \"0.01\",\n      \"editable\": true\n    },\n    \"self_limit_chf\": {\n      \"label\": \"My limit\",\n      \"help\": \"Set a lower limit for your own Aitronos servers. It can only be lower than what your organization allows you. Leave it empty to use the limit your organization set.\",\n      \"value\": null,\n      \"min\": \"0.01\",\n      \"max\": \"12.50\",\n      \"step\": \"0.01\",\n      \"editable\": true\n    }\n  }\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"errors","__idx":4},"children":["Errors"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Status"},"children":["Status"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Code"},"children":["Code"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"When"},"children":["When"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["401"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["AUTHENTICATION_REQUIRED"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No valid credential."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["403"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ORGANIZATION_ACCESS_DENIED"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["organization_id"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["X-Organization-Id"]}," names an organization you are not an active member of."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["403"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["INSUFFICIENT_PERMISSIONS"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The caller does not hold ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["use_forge"]}," in the acting organization."]}]}]}]}]}]},{"$$mdtype":"Tag","name":"ApiExamples","attributes":{},"children":[{"$$mdtype":"Tag","name":"CodeGroup","attributes":{"mode":"dropdown"},"children":[{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","data-title":"cURL","header":{"title":"cURL","controls":{"copy":{}}},"source":"curl \"https://api.aitronos.com/v1/forge/compute/limits\" \\\n  -H \"Authorization: Bearer $ACCESS_TOKEN\"\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"python","data-title":"Python SDK","header":{"title":"Python SDK","controls":{"copy":{}}},"source":"# pip install aitronos-sdk\n#\n# The Python SDK does not expose a typed `forge_compute` namespace yet, so call\n# the endpoint directly with the same credential you would pass to `Aitronos(...)`\n# — an API key or a bearer token, both sent as `Authorization: Bearer <value>`.\nimport httpx\n\nAPI_KEY = \"your-api-key\"\n\nlimits = httpx.get(\n    \"https://api.aitronos.com/v1/forge/compute/limits\",\n    headers={\"Authorization\": f\"Bearer {API_KEY}\"},\n).json()\nprint(limits[\"summary\"])\n","lang":"python"},"children":[]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"python","data-title":"Python","header":{"title":"Python","controls":{"copy":{}}},"source":"import os\nimport requests\n\ntoken = os.environ[\"AITRONOS_TOKEN\"]\nlimits = requests.get(\n    \"https://api.aitronos.com/v1/forge/compute/limits\",\n    headers={\"Authorization\": f\"Bearer {token}\"},\n).json()\nme = limits[\"me\"]\nif me is not None and me[\"effective_limit_chf\"] is not None:\n    print(\"Left this month:\", me[\"remaining_chf\"], limits[\"currency\"])\n","lang":"python"},"children":[]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"javascript","data-title":"JavaScript","header":{"title":"JavaScript","controls":{"copy":{}}},"source":"const response = await fetch(\"https://api.aitronos.com/v1/forge/compute/limits\", {\n  headers: { Authorization: `Bearer ${process.env.AITRONOS_TOKEN}` },\n});\nconst limits = await response.json();\nconsole.log(limits.summary);\nfor (const [key, field] of Object.entries(limits.fields)) {\n  console.log(key, field.label, field.value ?? \"not set\");\n}\n","lang":"javascript"},"children":[]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Response:"]}]},{"$$mdtype":"Tag","name":"Tabs","attributes":{"size":"medium"},"children":[{"$$mdtype":"Tag","name":"div","attributes":{"label":"200 OK","disable":false},"children":[{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"currency\": \"CHF\",\n  \"month\": \"2026-10\",\n  \"organization\": {\n    \"limit_chf\": \"40.00\",\n    \"compute_share_limit_chf\": null,\n    \"effective_limit_chf\": \"40.00\",\n    \"monthly_limit_chf\": \"80.00\",\n    \"member_default_chf\": \"12.50\",\n    \"spent_chf\": \"3.20\"\n  },\n  \"me\": {\n    \"user_id\": \"usr_7f3a9c2e1b8d4e6fa0c5b3d9e2f1a4c7\",\n    \"admin_limit_chf\": \"12.50\",\n    \"self_limit_chf\": null,\n    \"effective_limit_chf\": \"12.50\",\n    \"limit_source\": \"default\",\n    \"spent_chf\": \"1.66\",\n    \"remaining_chf\": \"10.84\"\n  },\n  \"spend_known\": true,\n  \"can_view_org_spend\": true,\n  \"can_edit_org_limits\": true,\n  \"can_edit_own_limit\": true,\n  \"summary\": \"You have spent CHF 1.66 of your CHF 12.50 monthly limit for Aitronos servers. Your organization has spent CHF 3.20 of its CHF 40.00 monthly limit for Aitronos servers.\",\n  \"fields\": {\n    \"org_limit_chf\": {\n      \"label\": \"Organization limit for Aitronos servers\",\n      \"help\": \"The most your whole organization can spend on Aitronos servers in a calendar month. Leave it empty for no separate limit: the organization's monthly spending limit still applies.\",\n      \"value\": \"40.00\",\n      \"min\": \"0.01\",\n      \"max\": \"80.00\",\n      \"step\": \"0.01\",\n      \"editable\": true\n    },\n    \"member_default_chf\": {\n      \"label\": \"Default limit per person\",\n      \"help\": \"The most each person can spend on Aitronos servers in a calendar month, unless you set a different limit for them. Leave it empty for no default.\",\n      \"value\": \"12.50\",\n      \"min\": \"0.01\",\n      \"max\": \"80.00\",\n      \"step\": \"0.01\",\n      \"editable\": true\n    },\n    \"member_limit_chf\": {\n      \"label\": \"Limit for this person\",\n      \"help\": \"Replaces the default limit for this person. Leave it empty to use the default.\",\n      \"value\": null,\n      \"min\": \"0.01\",\n      \"max\": \"80.00\",\n      \"step\": \"0.01\",\n      \"editable\": true\n    },\n    \"self_limit_chf\": {\n      \"label\": \"My limit\",\n      \"help\": \"Set a lower limit for your own Aitronos servers. It can only be lower than what your organization allows you. Leave it empty to use the limit your organization set.\",\n      \"value\": null,\n      \"min\": \"0.01\",\n      \"max\": \"12.50\",\n      \"step\": \"0.01\",\n      \"editable\": true\n    }\n  }\n}\n","lang":"json"},"children":[]}]},{"$$mdtype":"Tag","name":"div","attributes":{"label":"200 Spend unknown","disable":false},"children":[{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"currency\": \"CHF\",\n  \"month\": \"2026-10\",\n  \"organization\": {\n    \"limit_chf\": \"40.00\",\n    \"compute_share_limit_chf\": null,\n    \"effective_limit_chf\": \"40.00\",\n    \"monthly_limit_chf\": \"80.00\",\n    \"member_default_chf\": \"12.50\",\n    \"spent_chf\": null\n  },\n  \"me\": {\n    \"user_id\": \"usr_7f3a9c2e1b8d4e6fa0c5b3d9e2f1a4c7\",\n    \"admin_limit_chf\": \"12.50\",\n    \"self_limit_chf\": null,\n    \"effective_limit_chf\": \"12.50\",\n    \"limit_source\": \"default\",\n    \"spent_chf\": null,\n    \"remaining_chf\": null\n  },\n  \"spend_known\": false,\n  \"can_view_org_spend\": true,\n  \"can_edit_org_limits\": false,\n  \"can_edit_own_limit\": true,\n  \"summary\": \"Your Aitronos server spend this month could not be read. Your organization's Aitronos server spend this month could not be read.\",\n  \"fields\": {\n    \"org_limit_chf\": {\n      \"label\": \"Organization limit for Aitronos servers\",\n      \"help\": \"The most your whole organization can spend on Aitronos servers in a calendar month. Leave it empty for no separate limit: the organization's monthly spending limit still applies.\",\n      \"value\": \"40.00\",\n      \"min\": \"0.01\",\n      \"max\": \"80.00\",\n      \"step\": \"0.01\",\n      \"editable\": false\n    },\n    \"member_default_chf\": {\n      \"label\": \"Default limit per person\",\n      \"help\": \"The most each person can spend on Aitronos servers in a calendar month, unless you set a different limit for them. Leave it empty for no default.\",\n      \"value\": \"12.50\",\n      \"min\": \"0.01\",\n      \"max\": \"80.00\",\n      \"step\": \"0.01\",\n      \"editable\": false\n    },\n    \"member_limit_chf\": {\n      \"label\": \"Limit for this person\",\n      \"help\": \"Replaces the default limit for this person. Leave it empty to use the default.\",\n      \"value\": null,\n      \"min\": \"0.01\",\n      \"max\": \"80.00\",\n      \"step\": \"0.01\",\n      \"editable\": false\n    },\n    \"self_limit_chf\": {\n      \"label\": \"My limit\",\n      \"help\": \"Set a lower limit for your own Aitronos servers. It can only be lower than what your organization allows you. Leave it empty to use the limit your organization set.\",\n      \"value\": null,\n      \"min\": \"0.01\",\n      \"max\": \"12.50\",\n      \"step\": \"0.01\",\n      \"editable\": true\n    }\n  }\n}\n","lang":"json"},"children":[]}]},{"$$mdtype":"Tag","name":"div","attributes":{"label":"403 Forbidden","disable":false},"children":[{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"success\": false,\n  \"error\": {\n    \"code\": \"INSUFFICIENT_PERMISSIONS\",\n    \"message\": \"You don't have permission to perform this action.\",\n    \"system_message\": \"Missing required capability: use_forge\",\n    \"type\": \"authorization_error\",\n    \"status\": 403,\n    \"details\": {\"required_capability\": \"use_forge\"},\n    \"trace_id\": \"3f1c9a52-7d4e-4b8a-9c21-6e0d5f7a8b34\",\n    \"timestamp\": \"2026-10-01T09:00:00Z\"\n  }\n}\n","lang":"json"},"children":[]}]}]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"related-resources","__idx":5},"children":["Related Resources"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/introduction"},"children":["Forge cloud compute overview"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/list-billing-organizations"},"children":["List billing organizations"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/choose-billing-organization"},"children":["Choose the default billing organization"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/list-project-groups"},"children":["List project groups"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/put-project-group"},"children":["Register or update a project group"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/delete-project-group"},"children":["Delete a project group"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/list-offerings"},"children":["List compute offerings"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/get-offering-options"},"children":["Get offering options"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/resolve-offering-size"},"children":["Resolve a free size"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/list-credentials"},"children":["List connected accounts"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/put-credential"},"children":["Connect a cloud account"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/delete-credential"},"children":["Disconnect a cloud account"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/create-host"},"children":["Create a server"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/list-hosts"},"children":["List servers"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/list-my-hosts"},"children":["List your servers in every organization"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/get-host"},"children":["Get a server"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/get-host-usage"},"children":["Get a server's daily cost and uptime"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/list-host-intervals"},"children":["List a server's running intervals"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/list-host-events"},"children":["List a server's event history"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/report-progress"},"children":["Report a setup step"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/report-host-key"},"children":["Report the server's host key"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/report-ready"},"children":["Mark a server ready"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/report-activity"},"children":["Report activity"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/park-host"},"children":["Park a server"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/resume-host"},"children":["Resume a server"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/delete-host"},"children":["Delete a server"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/revoke-host"},"children":["Revoke a server"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/get-settings"},"children":["Get compute settings"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/update-settings"},"children":["Update compute settings"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/get-limits"},"children":["Get spend limits"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/update-organization-limits"},"children":["Change the organization's limits"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/update-my-limit"},"children":["Set your own limit"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/list-member-limits"},"children":["List member limits"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/update-member-limit"},"children":["Set a member's limit"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference/forge-compute/delete-orphan"},"children":["Delete a leftover resource"]}]}]}]},"headings":[{"value":"Get spend limits","id":"get-spend-limits","depth":1},{"value":"Query Parameters","id":"query-parameters","depth":4},{"value":"Headers","id":"headers","depth":4},{"value":"Returns","id":"returns","depth":2},{"value":"Errors","id":"errors","depth":2},{"value":"Related Resources","id":"related-resources","depth":2}],"frontmatter":{"title":"Get spend limits","keywords":["forge","cloud compute","spend limit","monthly limit","aitronos servers"],"seo":{"title":"Get spend limits"}},"lastModified":"2026-10-26T18:32:31.576Z","pagePropGetterError":{"message":"","name":""}},"slug":"/docs/api-reference/forge-compute/get-limits","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}