Skip to content

List connector permissions

GET
/api/v1/connectors/permissions
curl --request GET \
--url https://api.ultimateteam.ai/api/v1/connectors/permissions \
--header 'X-API-Key: <X-API-Key>'

Returns humanized permission summaries for the tenant’s connected connector instances. Returns an empty list (200) for a tenant with no connectors – never 404.

Successful Response

Media typeapplication/json
ConnectorPermissionsListResponse

Response for GET /connectors/permissions.

Attributes: connectors: The tenant’s connected instances with permission summaries. Empty list if the tenant has no connected connectors.

object
connectors
required
Connectors
Array<object>
ConnectorWithPermissionsInfo

A connected connector instance with its humanized permission summary.

Attributes: id: Connector instance UUID. name: Display name (from the connector registry). status: ‘healthy’ if the instance is active, ‘error’ otherwise. permissions: The humanized permission summary.

object
id
required
Id
string
name
required
Name
string
permissions
required
ConnectorPermissionSummary

Humanized permission summary for one connected connector instance.

Field shapes mirror the frontend’s ConnectorPermission interface in frontend/src/app/(dashboard)/settings/connectors/connector-permissions.tsx exactly – this is a display-oriented projection of ConnectorPermission, not the raw ORM record.

Attributes: data_read_scope: Human-readable description of what data may be read. action_permissions: Names of actions currently enabled (e.g. [‘read’, ‘create’]). spending_limit: Per-transaction spending cap, or None if unset. rate_limit: Human-readable rate limit (e.g. ‘10/minute’). approval_gate: Human-readable description of the approval requirement. audit_level: One of ‘full’, ‘standard’, ‘minimal’.

object
action_permissions
required
Action Permissions
Array<string>
approval_gate
required
Approval Gate
string
audit_level
required
Audit Level
string
Allowed values: full standard minimal
data_read_scope
required
Data Read Scope
string
rate_limit
required
Rate Limit
string
spending_limit
required
Any of:
number
policy
Any of:
ConnectorPermissionResponse

Serialised connector permission returned by the API.

object
action_permissions
required
ActionPermissions

Boolean flags for each operation type.

object
create
Create
boolean
delete
Delete
boolean
export
Export
boolean
read
Read
boolean
default: true
send
Send
boolean
update
Update
boolean
approval_required_actions
required
Approval Required Actions
Array<string>
audit_level
required
Audit Level
string
connector_instance_id
required
Connector Instance Id
string format: uuid
created_at
required
Created At
string format: date-time
data_read_scope
required
DataReadScope

Controls which entities and date ranges an agent may read.

object
date_range
Date Range

Allowed date range: ‘all’, ‘last_30d’, ‘last_90d’, etc.

string
default: all
entities
Entities

List of allowed entity types, or [‘*’] for all.

Array<string>
excluded_fields
Excluded Fields

Fields to strip from query results.

Array<string>
id
required
Id
string format: uuid
rate_limits
required
RateLimits

Connector-level call rate limits.

object
burst_allowed
Burst Allowed
boolean
per_day
Per Day
integer
default: 1000 >= 1
per_hour
Per Hour
integer
default: 100 >= 1
per_minute
Per Minute
integer
default: 10 >= 1
spending_limits
required
SpendingLimits

Per-transaction, daily, and monthly spending caps.

object
per_day
Per Day
string
default: 500.00 /^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$/
per_month
Per Month
string
default: 5000.00 /^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$/
per_txn
Per Txn
string
default: 100.00 /^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$/
requires_approval_above
Requires Approval Above

Transactions above this amount require human approval. 0 means disabled.

string
default: 0 /^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$/
updated_at
required
Updated At
string format: date-time
status
required
Status
string
Allowed values: healthy error
Example
{
"connectors": [
{
"permissions": {
"audit_level": "full"
},
"policy": {
"action_permissions": {
"create": false,
"delete": false,
"export": false,
"read": true,
"send": false,
"update": false
},
"data_read_scope": {
"date_range": "all"
},
"rate_limits": {
"burst_allowed": false,
"per_day": 1000,
"per_hour": 100,
"per_minute": 10
},
"spending_limits": {
"per_day": "500.00",
"per_month": "5000.00",
"per_txn": "100.00",
"requires_approval_above": "0"
}
},
"status": "healthy"
}
]
}