@celigo/api-specs 0.2.94 → 0.2.96
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/integration.yml +21 -4
- package/dist/mcp-oauth-provider.yml +7 -30
- package/dist/mcp-server.yml +17 -2
- package/dist/subscription.yml +43 -4
- package/dist/topic.yml +21 -4
- package/dist/user.yml +190 -20
- package/package.json +1 -1
- package/schemas.json +1 -1
package/dist/integration.yml
CHANGED
|
@@ -5116,17 +5116,19 @@ components:
|
|
|
5116
5116
|
- 6aab2870265e1cf39fcbee4d
|
|
5117
5117
|
draft:
|
|
5118
5118
|
type: boolean
|
|
5119
|
-
readOnly: true
|
|
5120
5119
|
description: |-
|
|
5121
|
-
When true, the topic
|
|
5122
|
-
|
|
5120
|
+
When true, the topic is an unconfirmed draft (created with `draft: true`, typically by
|
|
5121
|
+
the AI-assisted builder) that auto-deletes at `draftExpiresAt`. Absent on ordinary
|
|
5122
|
+
topics and once a `PUT` with `draft: false` promotes the draft.
|
|
5123
5123
|
examples:
|
|
5124
5124
|
- true
|
|
5125
5125
|
draftExpiresAt:
|
|
5126
5126
|
type: string
|
|
5127
5127
|
format: date-time
|
|
5128
5128
|
readOnly: true
|
|
5129
|
-
description:
|
|
5129
|
+
description: |-
|
|
5130
|
+
Timestamp when an unconfirmed draft is deleted automatically — 48 hours after
|
|
5131
|
+
creation. Present only while `draft` is true; cleared together with it.
|
|
5130
5132
|
examples:
|
|
5131
5133
|
- '2026-09-24T03:30:27.432Z'
|
|
5132
5134
|
createdAt:
|
|
@@ -5212,6 +5214,21 @@ components:
|
|
|
5212
5214
|
`GET /v1/topics?externalId=…`. Integration Apps use it to locate a topic across installs.
|
|
5213
5215
|
examples:
|
|
5214
5216
|
- erp-orders-created
|
|
5217
|
+
draft:
|
|
5218
|
+
type: boolean
|
|
5219
|
+
description: |-
|
|
5220
|
+
When true, the topic is a draft that auto-deletes 48 hours after creation
|
|
5221
|
+
(`draftExpiresAt` in the response). Set at creation; an update can clear the
|
|
5222
|
+
flag but never set it, and a PUT that omits it leaves an existing draft as is —
|
|
5223
|
+
the one field the whole-document PUT does not clear.
|
|
5224
|
+
x-celigo-ai-guidance:
|
|
5225
|
+
- |-
|
|
5226
|
+
POST with `draft: true` arms the 48-hour TTL (the server computes `draftExpiresAt`).
|
|
5227
|
+
PUT with `draft: false` clears the flag and the expiry, promoting the draft to a
|
|
5228
|
+
permanent topic. PUT with `draft: true` on a non-draft topic is silently ignored,
|
|
5229
|
+
and a PUT that omits the field leaves an existing draft flag unchanged.
|
|
5230
|
+
examples:
|
|
5231
|
+
- true
|
|
5215
5232
|
__integrationIds:
|
|
5216
5233
|
type: array
|
|
5217
5234
|
maxItems: 100
|
|
@@ -35,13 +35,16 @@ paths:
|
|
|
35
35
|
get:
|
|
36
36
|
x-internal: false
|
|
37
37
|
summary: List MCP OAuth providers
|
|
38
|
-
description:
|
|
38
|
+
description: |-
|
|
39
|
+
Returns all MCP OAuth providers in the account.
|
|
40
|
+
|
|
41
|
+
Field projection via `include` / `exclude` is **not** supported for this
|
|
42
|
+
resource. Passing either query param returns `422 invalid_query_params`
|
|
43
|
+
(`Include or exclude query params are not applicable for mcpoauthproviders
|
|
44
|
+
resource`). Request the full document and filter client-side.
|
|
39
45
|
operationId: listMcpOauthProviders
|
|
40
46
|
tags:
|
|
41
47
|
- MCP OAuth Providers
|
|
42
|
-
parameters:
|
|
43
|
-
- $ref: '#/components/parameters/Include'
|
|
44
|
-
- $ref: '#/components/parameters/Exclude'
|
|
45
48
|
responses:
|
|
46
49
|
'200':
|
|
47
50
|
description: Provider list.
|
|
@@ -294,32 +297,6 @@ components:
|
|
|
294
297
|
bearerAuth:
|
|
295
298
|
type: http
|
|
296
299
|
scheme: bearer
|
|
297
|
-
parameters:
|
|
298
|
-
Include:
|
|
299
|
-
name: include
|
|
300
|
-
in: query
|
|
301
|
-
required: false
|
|
302
|
-
description: |-
|
|
303
|
-
Comma-separated list of fields to project into each returned record.
|
|
304
|
-
Triggers summary projection: the response contains a minimal identity
|
|
305
|
-
set (`_id`, `name`, plus resource-specific fields) with the requested
|
|
306
|
-
fields added on top. Supports dot notation for nested fields.
|
|
307
|
-
Mutually exclusive with `exclude`.
|
|
308
|
-
schema:
|
|
309
|
-
type: string
|
|
310
|
-
example: _integrationId,disabled,lastModified
|
|
311
|
-
Exclude:
|
|
312
|
-
name: exclude
|
|
313
|
-
in: query
|
|
314
|
-
required: false
|
|
315
|
-
description: |-
|
|
316
|
-
Comma-separated list of fields to strip from the default response.
|
|
317
|
-
Unlike `include`, does not trigger summary projection — returns the
|
|
318
|
-
full record with the named fields removed. Protected identity fields
|
|
319
|
-
(e.g. `name`) cannot be stripped. Mutually exclusive with `include`.
|
|
320
|
-
schema:
|
|
321
|
-
type: string
|
|
322
|
-
example: createdAt,lastModified
|
|
323
300
|
schemas:
|
|
324
301
|
MCPOAuthProviderBase:
|
|
325
302
|
type: object
|
package/dist/mcp-server.yml
CHANGED
|
@@ -2669,6 +2669,9 @@ components:
|
|
|
2669
2669
|
every other field is taken from the stored row, and a write that includes
|
|
2670
2670
|
`upstreamMcpConnections` re-approves the current upstream definitions
|
|
2671
2671
|
(`approvedDefinitionHash` is re-pinned and `changedSinceApproval` reset).
|
|
2672
|
+
Each attachment whitelists at most 500 rows across `tools`, `prompts`,
|
|
2673
|
+
and `resources` combined; a larger whitelist is rejected with 422
|
|
2674
|
+
`mcp_upstream_max_capabilities`.
|
|
2672
2675
|
x-celigo-ai-guidance:
|
|
2673
2676
|
- |-
|
|
2674
2677
|
Attach only connections of type "mcp" that belong to this account: any
|
|
@@ -2679,6 +2682,16 @@ components:
|
|
|
2679
2682
|
To edit one row (enable, disable, rename, retitle) send the complete
|
|
2680
2683
|
upstreamMcpConnections array back via PUT: the array is preserved when
|
|
2681
2684
|
omitted, and PATCH reaches only /upstreamMcpConnections/{index}/alias.
|
|
2685
|
+
- |-
|
|
2686
|
+
Keep each attachment at 500 rows or fewer across tools, prompts, and
|
|
2687
|
+
resources combined: the 501st row fails the whole PUT with 422
|
|
2688
|
+
"mcp_upstream_max_capabilities" on upstreamMcpConnections[{index}].
|
|
2689
|
+
The cap is per attachment, so a second connection gets its own 500.
|
|
2690
|
+
- |-
|
|
2691
|
+
Set alias explicitly when the connection name is longer than 32
|
|
2692
|
+
characters: the alias derived from the name on first attach fails the
|
|
2693
|
+
PUT with 422 "size_limit_exceeded" on upstreamMcpConnections.{index}.alias,
|
|
2694
|
+
the same response an explicit alias of 33 or more characters gets.
|
|
2682
2695
|
required:
|
|
2683
2696
|
- _connectionId
|
|
2684
2697
|
properties:
|
|
@@ -2699,8 +2712,10 @@ components:
|
|
|
2699
2712
|
Short handle that namespaces the upstream's capabilities on this
|
|
2700
2713
|
server. Lowercased on save and unique per server (case-insensitive) —
|
|
2701
2714
|
a duplicate is rejected with 422 `mcp_upstream_duplicate_alias`, an
|
|
2702
|
-
invalid character with 422 `mcp_upstream_invalid_alias_charset
|
|
2703
|
-
|
|
2715
|
+
invalid character with 422 `mcp_upstream_invalid_alias_charset`, and
|
|
2716
|
+
an over-long value with 422 `size_limit_exceeded`.
|
|
2717
|
+
Derived from the connection name when omitted on the first attach, so
|
|
2718
|
+
a name longer than the alias cap needs an explicit alias.
|
|
2704
2719
|
examples:
|
|
2705
2720
|
- deepwiki
|
|
2706
2721
|
- crm_tools
|
package/dist/subscription.yml
CHANGED
|
@@ -285,7 +285,21 @@ paths:
|
|
|
285
285
|
connections:
|
|
286
286
|
- _id: 62ac9ab6cd606e428737008e
|
|
287
287
|
name: HubSpot (Production)
|
|
288
|
+
- type: http
|
|
289
|
+
_httpConnectorId: 6425e536bd748551c63024bc
|
|
290
|
+
connections:
|
|
291
|
+
- _id: 68ae48d6b5f755d2dd38c294
|
|
292
|
+
name: OpenAI
|
|
293
|
+
- type: ftp
|
|
294
|
+
hostURI: sftp.example.com
|
|
295
|
+
port: 22
|
|
296
|
+
connections:
|
|
297
|
+
- _id: 62ac8142839f01546de4db2a
|
|
298
|
+
name: Warehouse SFTP
|
|
288
299
|
- type: rdbms
|
|
300
|
+
rdbms:
|
|
301
|
+
type: snowflake
|
|
302
|
+
host: celigo_partner
|
|
289
303
|
connections:
|
|
290
304
|
- _id: 69d096cd4e0c505cda036a3a
|
|
291
305
|
name: Snowflake DW
|
|
@@ -1235,14 +1249,20 @@ components:
|
|
|
1235
1249
|
type: string
|
|
1236
1250
|
description: Integration name.
|
|
1237
1251
|
example: POC – HubSpot → Snowflake
|
|
1252
|
+
isDeleted:
|
|
1253
|
+
type: boolean
|
|
1254
|
+
description: When true, the parent integration has been soft-deleted and sits in the recycle bin. Absent while the integration is live.
|
|
1255
|
+
example: true
|
|
1238
1256
|
EndpointUsage:
|
|
1239
1257
|
type: object
|
|
1240
1258
|
description: |-
|
|
1241
1259
|
Endpoint entitlement usage for the requesting environment. An endpoint is a connected
|
|
1242
1260
|
application, not a connection record: connections that share a Celigo-managed application
|
|
1243
|
-
profile (`assistant`) are one endpoint,
|
|
1244
|
-
|
|
1245
|
-
|
|
1261
|
+
profile (`assistant`) are one endpoint, HTTP connections linked to an HTTP connector but without
|
|
1262
|
+
an `assistant` are grouped by `_httpConnectorId`, generic HTTP connections by `baseURI`,
|
|
1263
|
+
databases by `rdbms` engine and host, FTP servers by `hostURI` and `port`, and other adaptor
|
|
1264
|
+
types by their own connection identity. Each `endpoints[]` entry carries the fields it was
|
|
1265
|
+
grouped by.
|
|
1246
1266
|
properties:
|
|
1247
1267
|
numConsumed:
|
|
1248
1268
|
type: integer
|
|
@@ -1271,10 +1291,29 @@ components:
|
|
|
1271
1291
|
type: string
|
|
1272
1292
|
description: Application assistant identifier, if the connection uses a Celigo-managed application profile (e.g., `hubspot`, `netsuite`). Connections sharing an assistant are one endpoint.
|
|
1273
1293
|
example: hubspot
|
|
1294
|
+
_httpConnectorId:
|
|
1295
|
+
type: string
|
|
1296
|
+
format: objectId
|
|
1297
|
+
x-celigo-refModel: httpconnectors
|
|
1298
|
+
description: |-
|
|
1299
|
+
HTTP connector the endpoint's connections are linked to. Present when `type` is `http`
|
|
1300
|
+
and the connections carry `http._httpConnectorId` without an `assistant`; connections
|
|
1301
|
+
sharing the connector are one endpoint.
|
|
1302
|
+
example: 6425e536bd748551c63024bc
|
|
1274
1303
|
baseURI:
|
|
1275
1304
|
type: string
|
|
1276
|
-
description: Base URI that identifies this endpoint for generic HTTP connections (those without an `assistant`); connections whose base URIs differ are separate endpoints.
|
|
1305
|
+
description: Base URI that identifies this endpoint for generic HTTP connections (those without an `assistant` or an HTTP connector); connections whose base URIs differ are separate endpoints.
|
|
1277
1306
|
example: https://api.hubspot.com
|
|
1307
|
+
hostURI:
|
|
1308
|
+
type: string
|
|
1309
|
+
description: |-
|
|
1310
|
+
Server host the endpoint's connections point at. Present when `type` is `ftp`; with
|
|
1311
|
+
`port` it is the identity FTP endpoints are grouped by.
|
|
1312
|
+
example: sftp.example.com
|
|
1313
|
+
port:
|
|
1314
|
+
type: integer
|
|
1315
|
+
description: Server port the endpoint's connections use. Present when `type` is `ftp` and the connections set one.
|
|
1316
|
+
example: 22
|
|
1278
1317
|
rdbms:
|
|
1279
1318
|
type: object
|
|
1280
1319
|
description: Database connection details. Present when `type` is `rdbms`.
|
package/dist/topic.yml
CHANGED
|
@@ -1286,17 +1286,19 @@ components:
|
|
|
1286
1286
|
- 6aab2870265e1cf39fcbee4d
|
|
1287
1287
|
draft:
|
|
1288
1288
|
type: boolean
|
|
1289
|
-
readOnly: true
|
|
1290
1289
|
description: |-
|
|
1291
|
-
When true, the topic
|
|
1292
|
-
|
|
1290
|
+
When true, the topic is an unconfirmed draft (created with `draft: true`, typically by
|
|
1291
|
+
the AI-assisted builder) that auto-deletes at `draftExpiresAt`. Absent on ordinary
|
|
1292
|
+
topics and once a `PUT` with `draft: false` promotes the draft.
|
|
1293
1293
|
examples:
|
|
1294
1294
|
- true
|
|
1295
1295
|
draftExpiresAt:
|
|
1296
1296
|
type: string
|
|
1297
1297
|
format: date-time
|
|
1298
1298
|
readOnly: true
|
|
1299
|
-
description:
|
|
1299
|
+
description: |-
|
|
1300
|
+
Timestamp when an unconfirmed draft is deleted automatically — 48 hours after
|
|
1301
|
+
creation. Present only while `draft` is true; cleared together with it.
|
|
1300
1302
|
examples:
|
|
1301
1303
|
- '2026-09-24T03:30:27.432Z'
|
|
1302
1304
|
createdAt:
|
|
@@ -1422,6 +1424,21 @@ components:
|
|
|
1422
1424
|
`GET /v1/topics?externalId=…`. Integration Apps use it to locate a topic across installs.
|
|
1423
1425
|
examples:
|
|
1424
1426
|
- erp-orders-created
|
|
1427
|
+
draft:
|
|
1428
|
+
type: boolean
|
|
1429
|
+
description: |-
|
|
1430
|
+
When true, the topic is a draft that auto-deletes 48 hours after creation
|
|
1431
|
+
(`draftExpiresAt` in the response). Set at creation; an update can clear the
|
|
1432
|
+
flag but never set it, and a PUT that omits it leaves an existing draft as is —
|
|
1433
|
+
the one field the whole-document PUT does not clear.
|
|
1434
|
+
x-celigo-ai-guidance:
|
|
1435
|
+
- |-
|
|
1436
|
+
POST with `draft: true` arms the 48-hour TTL (the server computes `draftExpiresAt`).
|
|
1437
|
+
PUT with `draft: false` clears the flag and the expiry, promoting the draft to a
|
|
1438
|
+
permanent topic. PUT with `draft: true` on a non-draft topic is silently ignored,
|
|
1439
|
+
and a PUT that omits the field leaves an existing draft flag unchanged.
|
|
1440
|
+
examples:
|
|
1441
|
+
- true
|
|
1425
1442
|
__integrationIds:
|
|
1426
1443
|
type: array
|
|
1427
1444
|
maxItems: 100
|
package/dist/user.yml
CHANGED
|
@@ -42,7 +42,9 @@ paths:
|
|
|
42
42
|
summary: List users
|
|
43
43
|
description: |-
|
|
44
44
|
Returns all users with access to the account. The account owner is
|
|
45
|
-
not included — only invited users appear.
|
|
45
|
+
not included — only invited users appear. Without `userType` the list
|
|
46
|
+
holds workspace records only; end-user records (MCP-only consumers
|
|
47
|
+
managed through the End Users API) are included only when asked for.
|
|
46
48
|
operationId: listUsers
|
|
47
49
|
tags:
|
|
48
50
|
- Users
|
|
@@ -55,13 +57,15 @@ paths:
|
|
|
55
57
|
enum:
|
|
56
58
|
- workspace
|
|
57
59
|
- end-user
|
|
60
|
+
- workspace,end-user
|
|
58
61
|
x-enumDescriptions:
|
|
59
|
-
workspace: Workspace (team member) access records — the records
|
|
60
|
-
end-user: End-user records
|
|
62
|
+
workspace: Workspace (team member) access records — the same records an unfiltered call returns.
|
|
63
|
+
end-user: End-user access records only, each carrying `resourceGrants`, `provisionedBy`, and — when the end user belongs to a group — `groupMemberships` and `_groupIds`.
|
|
64
|
+
workspace,end-user: Both planes in one list; tell the records apart by `userType`.
|
|
61
65
|
description: |-
|
|
62
|
-
Filter by access-record type. `
|
|
63
|
-
|
|
64
|
-
|
|
66
|
+
Filter by access-record type. `end-user` returns the same records as
|
|
67
|
+
`GET /v1/endusers`, in this API's shape (`sharedWithUser` instead of the
|
|
68
|
+
joined `email` and `name`). Any other value is rejected with 400.
|
|
65
69
|
responses:
|
|
66
70
|
'200':
|
|
67
71
|
description: All users with access to the account.
|
|
@@ -115,8 +119,51 @@ paths:
|
|
|
115
119
|
name: Integration User
|
|
116
120
|
allowedToResetMFA: false
|
|
117
121
|
accountSSOLinked: not_linked
|
|
122
|
+
endUsers:
|
|
123
|
+
summary: ?userType=end-user — one end user with a group membership
|
|
124
|
+
value:
|
|
125
|
+
- _id: 6aacb5cd76dd63f8209a4c57
|
|
126
|
+
accepted: true
|
|
127
|
+
userType: end-user
|
|
128
|
+
provisionedBy: invite
|
|
129
|
+
resourceGrants:
|
|
130
|
+
- resourceType: mcpServer
|
|
131
|
+
_resourceId: 6aacaf0c1e2c183620e7253d
|
|
132
|
+
capabilities:
|
|
133
|
+
- tool:all
|
|
134
|
+
- resourceType: mcpServer
|
|
135
|
+
_resourceId: 6ab1ebd05af4c5a3ea6b0958
|
|
136
|
+
capabilities:
|
|
137
|
+
- pset:6ab1ec1d2d2c0e0d88aea1dc
|
|
138
|
+
groupMemberships:
|
|
139
|
+
- _groupId: 6abf4dd8fa3e52974f9f1d7a
|
|
140
|
+
source: manual
|
|
141
|
+
_groupIds:
|
|
142
|
+
- 6abf4dd8fa3e52974f9f1d7a
|
|
143
|
+
allowIntegrationWorkspaceCreation: false
|
|
144
|
+
lastModified: '2026-09-22T02:47:05.390Z'
|
|
145
|
+
createdAt: '2026-09-18T03:53:49.619Z'
|
|
146
|
+
sharedWithUser:
|
|
147
|
+
_id: 6aacb5cc76dd63f8209a4c28
|
|
148
|
+
email: enduser@example.com
|
|
149
|
+
name: Ana Enduser
|
|
150
|
+
lastSignIn: '2026-09-18T04:10:35.199Z'
|
|
151
|
+
allowedToResetMFA: false
|
|
152
|
+
accountSSOLinked: not_linked
|
|
118
153
|
'204':
|
|
119
154
|
description: No users exist in the account
|
|
155
|
+
'400':
|
|
156
|
+
description: '`userType` is not one of the accepted values.'
|
|
157
|
+
content:
|
|
158
|
+
application/json:
|
|
159
|
+
schema:
|
|
160
|
+
$ref: '#/components/schemas/Error'
|
|
161
|
+
examples:
|
|
162
|
+
invalidUserType:
|
|
163
|
+
value:
|
|
164
|
+
errors:
|
|
165
|
+
- code: validation_failed
|
|
166
|
+
message: Validation failed. userType must be workspace, end-user, or workspace,end-user.
|
|
120
167
|
'401':
|
|
121
168
|
$ref: '#/components/responses/401-unauthorized'
|
|
122
169
|
/v1/ashares/{_id}:
|
|
@@ -702,6 +749,83 @@ components:
|
|
|
702
749
|
allowIntegrationWorkspaceCreation:
|
|
703
750
|
type: boolean
|
|
704
751
|
description: When true, the user can create integration workspaces.
|
|
752
|
+
ResourceGrant:
|
|
753
|
+
type: object
|
|
754
|
+
description: |-
|
|
755
|
+
Grants access to a resource (currently MCP servers only). A grant names
|
|
756
|
+
the resource, or applies as a wildcard across all resources of the type,
|
|
757
|
+
and lists the capabilities granted on it.
|
|
758
|
+
required:
|
|
759
|
+
- resourceType
|
|
760
|
+
- capabilities
|
|
761
|
+
properties:
|
|
762
|
+
resourceType:
|
|
763
|
+
type: string
|
|
764
|
+
enum:
|
|
765
|
+
- mcpServer
|
|
766
|
+
x-enumDescriptions:
|
|
767
|
+
mcpServer: Grants access to an MCP server and its tools, APIs, or permission sets.
|
|
768
|
+
description: Resource type this grant applies to.
|
|
769
|
+
_resourceId:
|
|
770
|
+
type:
|
|
771
|
+
- string
|
|
772
|
+
- 'null'
|
|
773
|
+
format: objectId
|
|
774
|
+
x-celigo-refModel: mcpservers
|
|
775
|
+
examples:
|
|
776
|
+
- 6a1b2c3d4e5f6a7b8c9d0e1f
|
|
777
|
+
description: |-
|
|
778
|
+
MCP server this grant applies to. Omit or set to null for a wildcard
|
|
779
|
+
grant across all MCP servers in the account.
|
|
780
|
+
capabilities:
|
|
781
|
+
type: array
|
|
782
|
+
minItems: 1
|
|
783
|
+
description: |-
|
|
784
|
+
Capabilities granted on the target resource. Each `:all` capability
|
|
785
|
+
covers only its own kind — grant `tool:all`, `api:all`, `prompt:all`,
|
|
786
|
+
and `resource:all` together to open every item on a server.
|
|
787
|
+
items:
|
|
788
|
+
type: string
|
|
789
|
+
pattern: ^(?:tool|api|prompt|resource):(?:[a-fA-F0-9]{24}|all)$|^pset:[a-fA-F0-9]{24}$
|
|
790
|
+
description: |-
|
|
791
|
+
Capability string for an `mcpServer` grant. `tool:`, `api:`,
|
|
792
|
+
`prompt:`, and `resource:` take `all` or a 24-hex id on the target
|
|
793
|
+
server — a `tools[]._toolId` or upstream tool row `_id`, an
|
|
794
|
+
`apis[]._apiId`, a `prompts[]._id`, or a `resources[]._id`; `pset:`
|
|
795
|
+
takes a `permissionSets[]._id`. Grant prompts with `prompt:<_id>`:
|
|
796
|
+
older grants written as `tool:<prompt _id>` still validate but are
|
|
797
|
+
not reported by effective access. Any other shape is rejected with
|
|
798
|
+
400 `validation_failed` ("Invalid capability"), and an id that is
|
|
799
|
+
not attached to the target server with 400 `validation_failed`
|
|
800
|
+
naming the missing item.
|
|
801
|
+
examples:
|
|
802
|
+
- tool:all
|
|
803
|
+
- prompt:6b2c3d4e5f6a7b8c9d0e1f2a
|
|
804
|
+
- pset:6c3d4e5f6a7b8c9d0e1f2a3b
|
|
805
|
+
GroupMembership:
|
|
806
|
+
type: object
|
|
807
|
+
description: An end user's membership in a group, with the source that created it.
|
|
808
|
+
properties:
|
|
809
|
+
_groupId:
|
|
810
|
+
type: string
|
|
811
|
+
format: objectId
|
|
812
|
+
x-celigo-refModel: groups
|
|
813
|
+
examples:
|
|
814
|
+
- 68a1b2c3d4e5f6a7b8c9d0e1
|
|
815
|
+
description: Group the end user belongs to.
|
|
816
|
+
source:
|
|
817
|
+
type: string
|
|
818
|
+
enum:
|
|
819
|
+
- manual
|
|
820
|
+
- idp
|
|
821
|
+
x-enumDescriptions:
|
|
822
|
+
manual: Membership was added by an owner or administrator (invite or group members API)
|
|
823
|
+
idp: Membership is synced from the identity provider — group claims at sign-in or a SCIM group push
|
|
824
|
+
description: |-
|
|
825
|
+
How the membership was created. IdP-synced memberships cannot be
|
|
826
|
+
removed through the group members API — change the person's group in
|
|
827
|
+
the identity provider instead (its group mapping, or the SCIM group
|
|
828
|
+
assignment, whichever created the membership).
|
|
705
829
|
ResourceResponse:
|
|
706
830
|
type: object
|
|
707
831
|
description: Response
|
|
@@ -764,9 +888,15 @@ components:
|
|
|
764
888
|
type: object
|
|
765
889
|
required:
|
|
766
890
|
- _id
|
|
767
|
-
- integrationAccessLevel
|
|
768
891
|
- createdAt
|
|
769
892
|
- lastModified
|
|
893
|
+
if:
|
|
894
|
+
properties:
|
|
895
|
+
userType:
|
|
896
|
+
const: workspace
|
|
897
|
+
then:
|
|
898
|
+
required:
|
|
899
|
+
- integrationAccessLevel
|
|
770
900
|
description: |-
|
|
771
901
|
A user's access record in the account. Each user who has been invited
|
|
772
902
|
(or shared access), or whom the identity provider provisioned through
|
|
@@ -817,14 +947,18 @@ components:
|
|
|
817
947
|
readOnly: true
|
|
818
948
|
enum:
|
|
819
949
|
- workspace
|
|
950
|
+
- end-user
|
|
820
951
|
description: |-
|
|
821
952
|
Discriminates workspace users from end users on the underlying
|
|
822
|
-
access-record model.
|
|
823
|
-
records
|
|
824
|
-
|
|
825
|
-
|
|
953
|
+
access-record model. An unfiltered list and `GET /v1/ashares/{_id}`
|
|
954
|
+
return `workspace` records only; `end-user` records appear in the
|
|
955
|
+
list only when it is filtered with `userType=end-user` (or
|
|
956
|
+
`workspace,end-user`) and are otherwise managed through the End
|
|
957
|
+
Users API, which shares the update and disable routes. Sending it
|
|
958
|
+
back on update is rejected.
|
|
826
959
|
x-enumDescriptions:
|
|
827
960
|
workspace: A workspace (team member) access record.
|
|
961
|
+
end-user: An MCP-only end-user access record — carries `resourceGrants` (and group fields) in place of `accessLevel` and `integrationAccessLevel`.
|
|
828
962
|
lastSignIn:
|
|
829
963
|
type: string
|
|
830
964
|
format: date-time
|
|
@@ -868,19 +1002,24 @@ components:
|
|
|
868
1002
|
type: string
|
|
869
1003
|
readOnly: true
|
|
870
1004
|
enum:
|
|
1005
|
+
- invite
|
|
1006
|
+
- jit
|
|
871
1007
|
- scim
|
|
872
1008
|
x-enumDescriptions:
|
|
1009
|
+
invite: End-user record created through an explicit invite (or by migration from a workspace user); never present on a workspace record
|
|
1010
|
+
jit: End-user record provisioned just-in-time on first sign-in through an external IdP
|
|
873
1011
|
scim: Created, or adopted from an existing invitation, by the identity provider through SCIM
|
|
874
1012
|
description: |-
|
|
875
|
-
|
|
876
|
-
SCIM; every other workspace record omits
|
|
877
|
-
user has no value here rather
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
`PUT /v1/ashares/{
|
|
881
|
-
|
|
882
|
-
|
|
883
|
-
|
|
1013
|
+
On workspace records, present only when the identity provider
|
|
1014
|
+
manages the user through SCIM; every other workspace record omits
|
|
1015
|
+
the field, so an invited workspace user has no value here rather
|
|
1016
|
+
than `invite`. End-user records (`userType=end-user`) always carry
|
|
1017
|
+
it. The identity provider owns a SCIM-managed user's account-wide
|
|
1018
|
+
access level and active state: `PUT /v1/ashares/{_id}` still accepts
|
|
1019
|
+
a new `accessLevel` and `PUT /v1/ashares/{_userId}/disable` still
|
|
1020
|
+
toggles `disabled`, but the identity provider's next push overwrites
|
|
1021
|
+
both — change them in the IdP. SCIM never sets
|
|
1022
|
+
`integrationAccessLevel`, so integration-level grants made here stay.
|
|
884
1023
|
externalId:
|
|
885
1024
|
type: string
|
|
886
1025
|
readOnly: true
|
|
@@ -901,6 +1040,37 @@ components:
|
|
|
901
1040
|
description: |-
|
|
902
1041
|
SSO client whose SCIM configuration provisioned this record. Present
|
|
903
1042
|
only when `provisionedBy` is `scim`.
|
|
1043
|
+
resourceGrants:
|
|
1044
|
+
type: array
|
|
1045
|
+
readOnly: true
|
|
1046
|
+
description: |-
|
|
1047
|
+
Present only on end-user records (`userType=end-user`): the MCP
|
|
1048
|
+
server grants held directly by the end user, in addition to any
|
|
1049
|
+
group- or role-derived access. Replace them with the End Users
|
|
1050
|
+
body on `PUT /v1/ashares/{_ashareId}`.
|
|
1051
|
+
items:
|
|
1052
|
+
$ref: '#/components/schemas/ResourceGrant'
|
|
1053
|
+
groupMemberships:
|
|
1054
|
+
type: array
|
|
1055
|
+
readOnly: true
|
|
1056
|
+
description: |-
|
|
1057
|
+
Present only on end-user records that belong to at least one
|
|
1058
|
+
group. Each entry names the group and whether an administrator or
|
|
1059
|
+
the identity provider created the membership.
|
|
1060
|
+
items:
|
|
1061
|
+
$ref: '#/components/schemas/GroupMembership'
|
|
1062
|
+
_groupIds:
|
|
1063
|
+
type: array
|
|
1064
|
+
readOnly: true
|
|
1065
|
+
description: |-
|
|
1066
|
+
Group ids from `groupMemberships`, flattened for quick filtering.
|
|
1067
|
+
Present exactly when `groupMemberships` is.
|
|
1068
|
+
items:
|
|
1069
|
+
type: string
|
|
1070
|
+
format: objectId
|
|
1071
|
+
x-celigo-refModel: groups
|
|
1072
|
+
examples:
|
|
1073
|
+
- 6abf4dd8fa3e52974f9f1d7a
|
|
904
1074
|
sharedWithUser:
|
|
905
1075
|
type: object
|
|
906
1076
|
readOnly: true
|
package/package.json
CHANGED