set_account_unbilled
Generated automatically from the published contract sources.
Build metadata: Registered in this build. Registration describes the default dispatcher in this build. It does not guarantee that a caller has the required credential or grant, that a tool is listed for that connection, or that the required service is configured.
A script calls this action over HTTPS at POST https://turnzero.ai/api/v1/actions/set_account_unbilled, with a bearer credential and the action's payload as the JSON body.
Contract description
Mark an account unbilled, the company's own or a complimentary one, or clear the mark with no notice promised. Super-admin (platform operator) only. An unbilled account holds applications free of the per-account limits and is never charged. A synthetic account is refused.
Access and action metadata
{
"name": "set_account_unbilled",
"resource": "account",
"tier": "reversible",
"grant": "super_admin",
"summary": "Mark an account unbilled, the company's own or a complimentary one, or clear the mark with no notice promised: an unbilled account holds applications free of the per-account limits and is never charged; a synthetic account is refused.",
"annotations": {
"readOnlyHint": false,
"destructiveHint": true,
"openWorldHint": false
}
}
MCP catalog entry
{
"name": "set_account_unbilled",
"tier": "reversible",
"scenario": "API-L0-12",
"summary": "Mark an account unbilled, the company's own or a complimentary one, or clear the mark with no notice promised. Super-admin (platform operator) only. An unbilled account holds applications free of the per-account limits and is never charged. A synthetic account is refused.",
"owners": [
"ACB-L0-84"
]
}
request
| JSON pointer | Description and constraints |
|---|---|
| "" (root) | Type: object Required fields: ["subject_account","unbilled"] Additional properties: false |
| / |
The account id, from `list_accounts`. Type: string |
| / |
`true` marks an account unbilled, the company's own or a complimentary one, and `false` clears the mark, with no notice promised. A synthetic account is refused `invalid_request`. Type: boolean |
response
| JSON pointer | Description and constraints |
|---|---|
| "" (root) | Type: object Required fields: ["contract_version","account","unbilled","changed"] Additional properties: false |
| / |
Required value: 1 |
| / |
Type: object Required fields: ["id","created_at","standing","synthetic","unbilled"] Additional properties: false |
| / |
Type: string |
| / |
Type: string |
| / |
Allowed values: ["active","suspended"] |
| / |
Type: boolean |
| / |
true on an account a super-admin has marked unbilled, the company's own or a complimentary one — free of the per-account application limits and never charged (ACB-L0-84) — and false on every other account. Type: boolean |
| / |
The attribute as it now stands on the account. Type: boolean |
| / |
true where the call moved the attribute; false where the account already held that value, nothing changed, and a repeat answers the same. Type: boolean |
| / |
Type: string |
Complete payload contract
{
"request": {
"type": "object",
"required": [
"subject_account",
"unbilled"
],
"properties": {
"subject_account": {
"type": "string",
"description": "The account id, from `list_accounts`."
},
"unbilled": {
"type": "boolean",
"description": "`true` marks an account unbilled, the company's own or a complimentary one, and `false` clears the mark, with no notice promised. A synthetic account is refused `invalid_request`."
}
},
"additionalProperties": false
},
"response": {
"type": "object",
"required": [
"contract_version",
"account",
"unbilled",
"changed"
],
"properties": {
"contract_version": {
"const": 1
},
"account": {
"type": "object",
"required": [
"id",
"created_at",
"standing",
"synthetic",
"unbilled"
],
"properties": {
"id": {
"type": "string"
},
"created_at": {
"type": "string"
},
"standing": {
"enum": [
"active",
"suspended"
]
},
"synthetic": {
"type": "boolean"
},
"unbilled": {
"type": "boolean",
"description": "true on an account a super-admin has marked unbilled, the company's own or a complimentary one — free of the per-account application limits and never charged (ACB-L0-84) — and false on every other account."
}
},
"additionalProperties": false
},
"unbilled": {
"type": "boolean",
"description": "The attribute as it now stands on the account."
},
"changed": {
"type": "boolean",
"description": "true where the call moved the attribute; false where the account already held that value, nothing changed, and a repeat answers the same."
},
"detail": {
"type": "string"
}
},
"additionalProperties": false
}
}
Shared contracts
- Refusals: every refusal, by surface, with its cause and its remedy
- schemas/wire_error.schema.json
- schemas/wire_errors.json
- schemas/action_payloads.json (includes shared shapes)
- management_api_contract.md