Skip to content

Access requests

Discover workspace access requests

Discover the acting user’s access to features, integrations, models, tools, authentication methods, and member credit limits. Returns an empty list while requests are disabled. Requires access to the workspace; external collaborators use their workspace grant. Workspace API keys return `403`; use a personal API key or scoped OAuth token. OAuth scope: `api:read`.

GET/api/v2/workspaces/{workspaceId}/access-requests/discovery

Discover the acting user’s access to features, integrations, models, tools, authentication methods, and member credit limits. Returns an empty list while requests are disabled. Requires access to the workspace; external collaborators use their workspace grant. Workspace API keys return 403; use a personal API key or scoped OAuth token.

OAuth scope: api:read.

Authentication

Send a personal or workspace API key in X-API-Key. See key types and access; operations that reject workspace keys say so in their description.

Send X-API-Key in the request header.

Alternatively

Send a Sim OAuth access token in Authorization: Bearer. See OAuth authentication and scopes.

Authorization: Bearer YOUR_ACCESS_TOKEN

Required scopes: api:read

OAuth flows
json
{
  "authorizationCode": {
    "authorizationUrl": "https://www.sim.ai/api/auth/oauth2/authorize",
    "tokenUrl": "https://www.sim.ai/api/auth/oauth2/token",
    "refreshUrl": "https://www.sim.ai/api/auth/oauth2/token",
    "scopes": {
      "api:read": "Read your workspaces, workflows, files, tables, and logs",
      "api:write": "Read, create, change, run, and delete resources in your workspaces",
      "offline_access": "Stay signed in without asking again"
    }
  }
}

OAuth scope: api:read.

Path parameters

workspaceIdstringRequired

Workspace in which the acting user requests access.

minLength
1
maxLength
128

Query parameters

searchstring

Case-insensitive substring match against the access item label.

minLength
1
maxLength
200
targetKindstring

Category of access to discover.

enum
["feature","integration","provider","model","tool","knowledge_connector","file_share_auth","chat_deploy_auth","usage_limit"]
statestring

Filter by the acting user’s current access. Requestable items can be submitted for review.

enum
["allowed","requestable","unavailable"]
sortBystring

Field used to sort the result.

default
label
enum
["label"]
sortOrderstring

Sort direction.

default
asc
enum
["asc","desc"]
limitinteger

Maximum access items to return per page. Must be a whole number from 1 to 100. Defaults to 50.

default
50
minimum
1
maximum
100
cursorstring

Opaque cursor from the previous page. Send it back with the same sort and filters; only limit may change. Change anything else and pagination must restart without a cursor.

minLength
1

Responses

200

A page of access targets and the acting user’s current access state.

object

A page of access targets and the acting user’s current access state.

2 fields
dataarrayRequired

Items in the current page.

Schema details
Array itemobject
5 fields
targetvalueRequired

Pass this target unchanged to Create Access Request.

Schema details

Exactly one of

Option 1object
2 fields
kindstringRequired

Kind of access being requested.

const
feature
configKeystringRequired

Feature restriction key returned by access discovery.

enum
["hideTraceSpans","hideKnowledgeBaseTab","hideTablesTab","hideCopilot","hideIntegrationsTab","hideSecretsTab","hideApiKeysTab","hideInboxTab","hideFilesTab","disableMcpTools","disableCustomTools","disableSkills","disableInvitations","disablePublicApi","disablePublicFileSharing","hideDeployApi","hideDeployMcp","hideDeployChatbot","disablePersonalApiKeys","disableLogExport","hideCostInfo","disableKnowledgeBaseCreation","disableKnowledgeBaseFileUpload","disableTableCreation","disableTableExport","disableBulkFileDownload","disablePersonalCredentials","disableWorkspaceCreation","hideOrgMemberDirectory","disableCliAccess","disableWebhookTriggers","disableToolAutoApproval","hideSandboxesTab","disableOAuthAppAccess","disableKnowledgeBaseExport"]

Additional properties are not allowed.

Option 2object
2 fields
kindstringRequired

Kind of access being requested.

const
integration
idstringRequired

Identifier returned by access discovery.

minLength
1
maxLength
512

Additional properties are not allowed.

Option 3object
2 fields
kindstringRequired

Kind of access being requested.

const
provider
idstringRequired

Identifier returned by access discovery.

minLength
1
maxLength
512

Additional properties are not allowed.

Option 4object
2 fields
kindstringRequired

Kind of access being requested.

const
model
idstringRequired

Identifier returned by access discovery.

minLength
1
maxLength
512

Additional properties are not allowed.

Option 5object
2 fields
kindstringRequired

Kind of access being requested.

const
tool
idstringRequired

Identifier returned by access discovery.

minLength
1
maxLength
512

Additional properties are not allowed.

Option 6object
2 fields
kindstringRequired

Kind of access being requested.

const
knowledge_connector
idstringRequired

Identifier returned by access discovery.

minLength
1
maxLength
512

Additional properties are not allowed.

Option 7object
2 fields
kindstringRequired

Kind of access being requested.

const
file_share_auth
idstringRequired

Authentication mode to request.

enum
["public","password","email","sso"]

Additional properties are not allowed.

Option 8object
2 fields
kindstringRequired

Kind of access being requested.

const
chat_deploy_auth
idstringRequired

Authentication mode to request.

enum
["public","password","email","sso"]

Additional properties are not allowed.

Option 9object
2 fields
kindstringRequired

Kind of access being requested.

const
usage_limit
idstringRequired

Request an increase to the acting user’s member credit cap.

const
member

Additional properties are not allowed.

labelstringRequired

Human-readable access item name.

minLength
1
maxLength
512
statestringRequired

Whether access is already allowed, can be requested, or is unavailable.

enum
["allowed","requestable","unavailable"]
reasonvalueRequired

Why access is unavailable or restricted; null when no explanation is needed.

Schema details

Any of

Option 1string
maxLength
1000
Option 2null
pendingRequestIdvalueRequired

Existing pending request for this item; null when none exists.

Schema details

Any of

Option 1string

Access request identifier.

minLength
1
maxLength
128
Option 2null

Additional properties are not allowed.

nextCursorvalueRequired

Opaque cursor for the next page. Send it back as cursor; null means there are no more pages. Do not construct a cursor yourself.

Schema details

Any of

Option 1string
Option 2null

Additional properties are not allowed.

Response example 1

json
{
  "data": [
    {
      "target": {
        "kind": "feature",
        "configKey": "hideTablesTab"
      },
      "label": "Tables",
      "state": "requestable",
      "reason": null,
      "pendingRequestId": null
    }
  ],
  "nextCursor": null
}

Response headers

X-RateLimit-Limitinteger

Maximum requests allowed in the current window.

minimum
0
maximum
9007199254740991
X-RateLimit-Remaininginteger

Requests remaining in the current window.

minimum
0
maximum
9007199254740991
X-RateLimit-Resetstring

ISO 8601 timestamp when the current rate-limit window resets.

format
date-time
pattern
^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
Was this helpful?
Suggest an edit