revoke_support_access
End a Scheduler Zero support-access grant in a workspace immediately.
# 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)
## revoke_support_access
End a Scheduler Zero support-access grant in a workspace immediately.
Use when support no longer needs access, or the person asks to remove it. Revoking an already-ended grant is a no-op.
It does not remove workspace members or API keys; use their own tools.
Scopes: workspaceMember:remove
Risk: write; confirmation: none; idempotency: supported.
### Input schema (personal API key)
```json
{
"type": "object",
"properties": {
"workspaceId": {
"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"
},
"grantId": {
"$ref": "#/$defs/SupportAccessGrantId"
}
},
"required": [
"workspaceId",
"grantId"
],
"patternProperties": {
"^(?!(?:workspaceId|grantId)$)[\\s\\S]*$": false
},
"additionalProperties": true,
"propertyNames": {
"type": "string",
"enum": [
"workspaceId",
"grantId"
]
},
"$defs": {
"SupportAccessGrantId": {
"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"
}
}
}
```
### Input schema (OAuth / delegated agent)
```json
{
"type": "object",
"properties": {
"workspaceId": {
"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"
},
"grantId": {
"$ref": "#/$defs/SupportAccessGrantId"
}
},
"required": [
"workspaceId",
"grantId"
],
"patternProperties": {
"^(?!(?:workspaceId|grantId)$)[\\s\\S]*$": false
},
"additionalProperties": true,
"propertyNames": {
"type": "string",
"enum": [
"workspaceId",
"grantId"
]
},
"$defs": {
"SupportAccessGrantId": {
"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"
}
}
}
```
### Output schema (structuredContent)
```json
{
"$defs": {
"SupportAccessGrantId": {
"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"
},
"SupportAccessStatus": {
"type": "string",
"enum": [
"active",
"expired",
"revoked"
]
},
"SupportAccessDurationHours": {
"type": "number",
"enum": [
24,
72,
168
]
},
"SupportAccessPerson": {
"type": "object",
"properties": {
"userId": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"email": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"userId",
"email"
],
"patternProperties": {
"^(?!(?:userId|email)$)[\\s\\S]*$": false
},
"additionalProperties": true,
"propertyNames": {
"type": "string",
"enum": [
"userId",
"email"
]
}
},
"UtcDateTimeEncoded": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}\\.\\d{3}Z$"
},
"SupportAccessGrant": {
"type": "object",
"properties": {
"id": {
"$ref": "#/$defs/SupportAccessGrantId"
},
"workspaceId": {
"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"
},
"status": {
"$ref": "#/$defs/SupportAccessStatus"
},
"permissions": {
"type": "array",
"items": {
"type": "string",
"enum": [
"agent:capabilities",
"agent:identity",
"agent:operations:cancel",
"agent:operations:read",
"analytics:export",
"analytics:read",
"apiKey:create",
"apiKey:delete",
"apiKey:read",
"apiKey:update",
"audit:read",
"billing:manage",
"billing:read",
"blocklist:create",
"blocklist:delete",
"blocklist:read",
"campaign:archive",
"campaign:create",
"campaign:delete",
"campaign:launch",
"campaign:pause",
"campaign:read",
"campaign:update",
"dialer:assign_numbers",
"dialer:assign_seats",
"dialer:create",
"dialer:delete",
"dialer:dial",
"dialer:manage_billing",
"dialer:manage_number_health",
"dialer:manage_numbers",
"dialer:manage_numbers_self",
"dialer:manage_voicemails",
"dialer:read",
"dialer:read_analytics",
"dialer:read_numbers_all",
"dialer:release_numbers",
"dialer:update",
"domain:manage_dns",
"domain:purchase",
"domain:read",
"domain:transfer",
"emailVerification:manage_credits",
"emailVerification:manage_keys",
"emailVerification:manage_sharing",
"emailVerification:read",
"emailVerification:verify",
"inbox:connect",
"inbox:create",
"inbox:delete",
"inbox:read",
"inbox:update",
"inbox:warmup_manage",
"integration:create",
"integration:delete",
"integration:read",
"integration:update",
"lead:create",
"lead:delete",
"lead:export",
"lead:import",
"lead:read",
"lead:update",
"leadList:create",
"leadList:delete",
"leadList:read",
"leadList:update",
"org:delete",
"orgAnalytics:read",
"orgAnalytics:manage",
"org:read",
"org:update",
"orgApiKey:manage",
"orgMember:invite",
"orgMember:read",
"orgMember:remove",
"orgMember:update",
"phoneVerification:manage_keys",
"phoneVerification:read",
"phoneVerification:verify",
"platform:operate",
"replyLabel:create",
"replyLabel:delete",
"replyLabel:read",
"replyLabel:update",
"role:manage",
"role:read",
"sequence:create",
"sequence:delete",
"sequence:read",
"sequence:update",
"sql:manage_dashboards",
"sql:query",
"support:create",
"support:read",
"support:update",
"tag:create",
"tag:delete",
"tag:read",
"tag:update",
"task:create",
"task:delete",
"task:read",
"task:update",
"template:create",
"template:delete",
"template:read",
"template:update",
"unibox:archive",
"unibox:label",
"unibox:read",
"unibox:reply",
"usage:read",
"webhook:create",
"webhook:delete",
"webhook:read",
"webhook:update",
"whiteLabel:read",
"whiteLabel:update",
"workflow:create",
"workflow:delete",
"workflow:publish",
"workflow:read",
"workflow:run",
"workflow:update",
"workspace:create",
"workspace:delete",
"workspace:read",
"workspace:transfer",
"workspace:update",
"workspaceMember:invite",
"workspaceMember:read",
"workspaceMember:remove",
"workspaceMember:update"
]
}
},
"durationHours": {
"$ref": "#/$defs/SupportAccessDurationHours"
},
"reason": {
"anyOf": [
{
"type": "string",
"maxLength": 1000
},
{
"type": "null"
}
]
},
"grantedBy": {
"$ref": "#/$defs/SupportAccessPerson"
},
"createdAt": {
"$ref": "#/$defs/UtcDateTimeEncoded"
},
"expiresAt": {
"$ref": "#/$defs/UtcDateTimeEncoded"
},
"revokedAt": {
"anyOf": [
{
"$ref": "#/$defs/UtcDateTimeEncoded"
},
{
"type": "null"
}
]
},
"revokedBy": {
"anyOf": [
{
"$ref": "#/$defs/SupportAccessPerson"
},
{
"type": "null"
}
]
},
"lastUsedAt": {
"anyOf": [
{
"$ref": "#/$defs/UtcDateTimeEncoded"
},
{
"type": "null"
}
]
}
},
"required": [
"id",
"workspaceId",
"status",
"permissions",
"durationHours",
"reason",
"grantedBy",
"createdAt",
"expiresAt",
"revokedAt",
"revokedBy",
"lastUsedAt"
],
"patternProperties": {
"^(?!(?:id|workspaceId|status|permissions|durationHours|reason|grantedBy|createdAt|expiresAt|revokedAt|revokedBy|lastUsedAt)$)[\\s\\S]*$": false
},
"additionalProperties": true,
"propertyNames": {
"type": "string",
"enum": [
"id",
"workspaceId",
"status",
"permissions",
"durationHours",
"reason",
"grantedBy",
"createdAt",
"expiresAt",
"revokedAt",
"revokedBy",
"lastUsedAt"
]
}
},
"RevokeSupportAccessResult": {
"type": "object",
"properties": {
"grant": {
"$ref": "#/$defs/SupportAccessGrant"
},
"changed": {
"type": "boolean"
}
},
"required": [
"grant",
"changed"
],
"patternProperties": {
"^(?!(?:grant|changed)$)[\\s\\S]*$": false
},
"additionalProperties": true,
"propertyNames": {
"type": "string",
"enum": [
"grant",
"changed"
]
}
}
},
"type": "object",
"anyOf": [
{
"allOf": [
{
"$ref": "#/$defs/RevokeSupportAccessResult"
},
{
"type": "object"
}
]
},
{
"type": "object",
"properties": {
"data": {
"allOf": [
{
"$ref": "#/$defs/RevokeSupportAccessResult"
},
{
"not": {
"type": "object"
}
}
]
}
},
"required": [
"data"
],
"additionalProperties": false
}
]
}
```
### Underlying API operations
- `supportAccess.revoke`: `POST /v1/workspaces/:workspaceId/support-access/:grantId/revoke`