block_organization_api_key
Block a member's personal API key from one Organization (preview, then commit with the confirmation token), or lift that block. The key keeps working in the member's other Organizations.
# MCP tool reference
1 callable tools.
Use tools/call at https://mcp.schedulerzero.com/mcp with the exact tool name and arguments below. The /tools/ paths in this view are documentation identifiers, not HTTP endpoints. Request execution is disabled for this reference.
Inputs are shown for personal API keys (bound) and for OAuth/delegated agents. Output schemas describe MCP structuredContent: native objects pass through; arrays, scalars and null use a data wrapper. Text content retains the native JSON result.
[Connect a client](/mcp/connect) · [Authentication and authorization](/authentication) · [Generated auth guide](/auth.md) · [Download tool catalog](/mcp-catalog.json) · [Agent documentation](/llms.txt)
## block_organization_api_key
Block a member's personal API key from one Organization (preview, then commit with the confirmation token), or lift that block. The key keeps working in the member's other Organizations.
Use when an Organization owner wants a member's key out of this Organization without revoking the member's credential everywhere.
Requires orgApiKey:manage. To stop a member's access entirely, remove the member; their keys lose access with them.
Use the native preview first and pass its confirmation token unchanged to commit. A token does not bypass current permissions or Workspace checks.
Scopes: orgApiKey:manage
Risk: security_admin; confirmation: preview_token; idempotency: required.
### Input schema (personal API key)
```json
{
"type": "object",
"properties": {
"organizationId": {
"type": "string",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
"format": "uuid"
},
"apiKeyId": {
"type": "string",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
"format": "uuid"
},
"action": {
"type": "string",
"enum": [
"block",
"unblock"
]
},
"confirmationToken": {
"$ref": "#/$defs/OpaqueId"
}
},
"required": [
"organizationId",
"apiKeyId",
"action"
],
"patternProperties": {
"^(?!(?:organizationId|apiKeyId|action|confirmationToken)$)[\\s\\S]*$": false
},
"additionalProperties": true,
"propertyNames": {
"type": "string",
"enum": [
"organizationId",
"apiKeyId",
"action",
"confirmationToken"
]
},
"$defs": {
"OpaqueId": {
"type": "string",
"minLength": 1,
"maxLength": 512
}
}
}
```
### Input schema (OAuth / delegated agent)
```json
{
"type": "object",
"properties": {
"organizationId": {
"type": "string",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
"format": "uuid"
},
"apiKeyId": {
"type": "string",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
"format": "uuid"
},
"action": {
"type": "string",
"enum": [
"block",
"unblock"
]
},
"confirmationToken": {
"$ref": "#/$defs/OpaqueId"
}
},
"required": [
"organizationId",
"apiKeyId",
"action"
],
"patternProperties": {
"^(?!(?:organizationId|apiKeyId|action|confirmationToken)$)[\\s\\S]*$": false
},
"additionalProperties": true,
"propertyNames": {
"type": "string",
"enum": [
"organizationId",
"apiKeyId",
"action",
"confirmationToken"
]
},
"$defs": {
"OpaqueId": {
"type": "string",
"minLength": 1,
"maxLength": 512
}
}
}
```
### Output schema (structuredContent)
```json
{
"$defs": {
"Description": {
"type": "string",
"minLength": 1,
"maxLength": 4096
},
"NonEmptyString": {
"type": "string",
"minLength": 1,
"maxLength": 4096
},
"OpaqueId": {
"type": "string",
"minLength": 1,
"maxLength": 512
},
"Money": {
"type": "object",
"properties": {
"amountMinor": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"currency": {
"type": "string",
"enum": [
"AED",
"AFN",
"ALL",
"AMD",
"AOA",
"ARS",
"AUD",
"AWG",
"AZN",
"BAM",
"BBD",
"BDT",
"BHD",
"BIF",
"BMD",
"BND",
"BOB",
"BOV",
"BRL",
"BSD",
"BTN",
"BWP",
"BYN",
"BZD",
"CAD",
"CDF",
"CHE",
"CHF",
"CHW",
"CLF",
"CLP",
"CNY",
"COP",
"COU",
"CRC",
"CUP",
"CVE",
"CZK",
"DJF",
"DKK",
"DOP",
"DZD",
"EGP",
"ERN",
"ETB",
"EUR",
"FJD",
"FKP",
"GBP",
"GEL",
"GHS",
"GIP",
"GMD",
"GNF",
"GTQ",
"GYD",
"HKD",
"HNL",
"HTG",
"HUF",
"IDR",
"ILS",
"INR",
"IQD",
"IRR",
"ISK",
"JMD",
"JOD",
"JPY",
"KES",
"KGS",
"KHR",
"KMF",
"KPW",
"KRW",
"KWD",
"KYD",
"KZT",
"LAK",
"LBP",
"LKR",
"LRD",
"LSL",
"LYD",
"MAD",
"MDL",
"MGA",
"MKD",
"MMK",
"MNT",
"MOP",
"MRU",
"MUR",
"MVR",
"MWK",
"MXN",
"MXV",
"MYR",
"MZN",
"NAD",
"NGN",
"NIO",
"NOK",
"NPR",
"NZD",
"OMR",
"PAB",
"PEN",
"PGK",
"PHP",
"PKR",
"PLN",
"PYG",
"QAR",
"RON",
"RSD",
"RUB",
"RWF",
"SAR",
"SBD",
"SCR",
"SDG",
"SEK",
"SGD",
"SHP",
"SLE",
"SOS",
"SRD",
"SSP",
"STN",
"SVC",
"SYP",
"SZL",
"THB",
"TJS",
"TMT",
"TND",
"TOP",
"TRY",
"TTD",
"TWD",
"TZS",
"UAH",
"UGX",
"USD",
"USN",
"UYI",
"UYU",
"UYW",
"UZS",
"VED",
"VES",
"VND",
"VUV",
"WST",
"XAD",
"XAF",
"XAG",
"XAU",
"XBA",
"XBB",
"XBC",
"XBD",
"XCD",
"XCG",
"XDR",
"XOF",
"XPD",
"XPF",
"XPT",
"XSU",
"XTS",
"XUA",
"XXX",
"YER",
"ZAR",
"ZMW",
"ZWG"
]
}
},
"required": [
"amountMinor",
"currency"
],
"patternProperties": {
"^(?!(?:amountMinor|currency)$)[\\s\\S]*$": false
},
"additionalProperties": true,
"propertyNames": {
"type": "string",
"enum": [
"amountMinor",
"currency"
]
}
},
"ShortText": {
"type": "string",
"minLength": 1,
"maxLength": 256
},
"UtcDateTimeEncoded": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}\\.\\d{3}Z$"
}
},
"type": "object",
"anyOf": [
{
"allOf": [
{
"anyOf": [
{
"type": "object",
"properties": {
"preview": {
"type": "object",
"properties": {
"summary": {
"$ref": "#/$defs/Description"
},
"affected": {
"type": "object",
"properties": {
"resourceCounts": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"$ref": "#/$defs/NonEmptyString"
},
"count": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"required": [
"type",
"count"
],
"patternProperties": {
"^(?!(?:type|count)$)[\\s\\S]*$": false
},
"additionalProperties": true,
"propertyNames": {
"type": "string",
"enum": [
"type",
"count"
]
}
},
"maxItems": 64
},
"resourceIds": {
"type": "array",
"items": {
"$ref": "#/$defs/OpaqueId"
},
"maxItems": 256
}
},
"required": [
"resourceCounts",
"resourceIds"
],
"patternProperties": {
"^(?!(?:resourceCounts|resourceIds)$)[\\s\\S]*$": false
},
"additionalProperties": true,
"propertyNames": {
"type": "string",
"enum": [
"resourceCounts",
"resourceIds"
]
}
},
"costEstimate": {
"type": "object",
"properties": {
"min": {
"$ref": "#/$defs/Money"
},
"max": {
"$ref": "#/$defs/Money"
}
},
"required": [
"min",
"max"
],
"patternProperties": {
"^(?!(?:min|max)$)[\\s\\S]*$": false
},
"additionalProperties": true,
"propertyNames": {
"type": "string",
"enum": [
"min",
"max"
]
}
},
"warnings": {
"type": "array",
"items": {
"$ref": "#/$defs/ShortText"
},
"maxItems": 32
},
"irreversibleFacts": {
"type": "array",
"items": {
"$ref": "#/$defs/ShortText"
},
"maxItems": 32
},
"inputHash": {
"$ref": "#/$defs/OpaqueId"
},
"previewVersion": {
"$ref": "#/$defs/NonEmptyString"
},
"expiresAt": {
"$ref": "#/$defs/UtcDateTimeEncoded"
}
},
"required": [
"summary",
"affected",
"warnings",
"irreversibleFacts",
"inputHash",
"previewVersion",
"expiresAt"
],
"patternProperties": {
"^(?!(?:summary|affected|costEstimate|warnings|irreversibleFacts|inputHash|previewVersion|expiresAt)$)[\\s\\S]*$": false
},
"additionalProperties": true,
"propertyNames": {
"type": "string",
"enum": [
"summary",
"affected",
"costEstimate",
"warnings",
"irreversibleFacts",
"inputHash",
"previewVersion",
"expiresAt"
]
}
},
"confirmationToken": {
"$ref": "#/$defs/OpaqueId"
}
},
"required": [
"preview",
"confirmationToken"
],
"patternProperties": {
"^(?!(?:preview|confirmationToken)$)[\\s\\S]*$": false
},
"additionalProperties": true,
"propertyNames": {
"type": "string",
"enum": [
"preview",
"confirmationToken"
]
}
},
{
"type": "object",
"properties": {
"blocked": {
"type": "boolean"
}
},
"required": [
"blocked"
],
"patternProperties": {
"^(?!(?:blocked)$)[\\s\\S]*$": false
},
"additionalProperties": true,
"propertyNames": {
"anyOf": [
{
"type": "string",
"enum": [
"blocked"
]
}
]
}
}
]
},
{
"type": "object"
}
]
},
{
"type": "object",
"properties": {
"data": {
"allOf": [
{
"anyOf": [
{
"type": "object",
"properties": {
"preview": {
"type": "object",
"properties": {
"summary": {
"$ref": "#/$defs/Description"
},
"affected": {
"type": "object",
"properties": {
"resourceCounts": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"$ref": "#/$defs/NonEmptyString"
},
"count": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"required": [
"type",
"count"
],
"patternProperties": {
"^(?!(?:type|count)$)[\\s\\S]*$": false
},
"additionalProperties": true,
"propertyNames": {
"type": "string",
"enum": [
"type",
"count"
]
}
},
"maxItems": 64
},
"resourceIds": {
"type": "array",
"items": {
"$ref": "#/$defs/OpaqueId"
},
"maxItems": 256
}
},
"required": [
"resourceCounts",
"resourceIds"
],
"patternProperties": {
"^(?!(?:resourceCounts|resourceIds)$)[\\s\\S]*$": false
},
"additionalProperties": true,
"propertyNames": {
"type": "string",
"enum": [
"resourceCounts",
"resourceIds"
]
}
},
"costEstimate": {
"type": "object",
"properties": {
"min": {
"$ref": "#/$defs/Money"
},
"max": {
"$ref": "#/$defs/Money"
}
},
"required": [
"min",
"max"
],
"patternProperties": {
"^(?!(?:min|max)$)[\\s\\S]*$": false
},
"additionalProperties": true,
"propertyNames": {
"type": "string",
"enum": [
"min",
"max"
]
}
},
"warnings": {
"type": "array",
"items": {
"$ref": "#/$defs/ShortText"
},
"maxItems": 32
},
"irreversibleFacts": {
"type": "array",
"items": {
"$ref": "#/$defs/ShortText"
},
"maxItems": 32
},
"inputHash": {
"$ref": "#/$defs/OpaqueId"
},
"previewVersion": {
"$ref": "#/$defs/NonEmptyString"
},
"expiresAt": {
"$ref": "#/$defs/UtcDateTimeEncoded"
}
},
"required": [
"summary",
"affected",
"warnings",
"irreversibleFacts",
"inputHash",
"previewVersion",
"expiresAt"
],
"patternProperties": {
"^(?!(?:summary|affected|costEstimate|warnings|irreversibleFacts|inputHash|previewVersion|expiresAt)$)[\\s\\S]*$": false
},
"additionalProperties": true,
"propertyNames": {
"type": "string",
"enum": [
"summary",
"affected",
"costEstimate",
"warnings",
"irreversibleFacts",
"inputHash",
"previewVersion",
"expiresAt"
]
}
},
"confirmationToken": {
"$ref": "#/$defs/OpaqueId"
}
},
"required": [
"preview",
"confirmationToken"
],
"patternProperties": {
"^(?!(?:preview|confirmationToken)$)[\\s\\S]*$": false
},
"additionalProperties": true,
"propertyNames": {
"type": "string",
"enum": [
"preview",
"confirmationToken"
]
}
},
{
"type": "object",
"properties": {
"blocked": {
"type": "boolean"
}
},
"required": [
"blocked"
],
"patternProperties": {
"^(?!(?:blocked)$)[\\s\\S]*$": false
},
"additionalProperties": true,
"propertyNames": {
"anyOf": [
{
"type": "string",
"enum": [
"blocked"
]
}
]
}
}
]
},
{
"not": {
"type": "object"
}
}
]
}
},
"required": [
"data"
],
"additionalProperties": false
}
]
}
```
### Underlying API operations
- `organizationApiKeys.previewBlock`: `POST /v1/organizations/:organizationId/api-keys/:apiKeyId/block-preview`
- `organizationApiKeys.block`: `POST /v1/organizations/:organizationId/api-keys/:apiKeyId/block`
- `organizationApiKeys.unblock`: `DELETE /v1/organizations/:organizationId/api-keys/:apiKeyId/block`