Zuplo API v4
Zuplo Developer API

The people who manage a pool. A membership has no ID of its own. It is identified by the pool and the user, so adding someone and changing their role are the same request: a POST to the pool's members with their userId.


List pool members

GET
https://dev-api-v4-main-a471234.zuplo.app
/v4/buckets/{bucketId}/ai/pools/{poolId}/members

Lists everyone with access to the pool. That includes people with a role assigned on this pool and people who inherit one from an ancestor pool.

List pool members › path Parameters

bucketId
​string · maxLength: 64 · required

The bucket ID (bckt_…). Everything in a bucket is addressed under it.

poolId
​string · maxLength: 64 · required

The pool ID (config_…).

List pool members › query Parameters

limit
​integer · min: 1 · max: 100

The maximum number of items to return.

Default: 10
offset
​integer · min: 0

The number of items to skip before the first item returned.

Default: 0

List pool members › Responses

A page of pool members.

A page of pool members.
​AiPoolMember[] · required

The pool members on this page.

limit
​integer · required

The page size that was applied.

offset
​integer · required

The number of items skipped before this page.

total
​integer · required

The number of items in the whole collection.

hasMore
​boolean · required

Whether there are more items after this page.

next
​string | null · required

The relative URL of the next page, or null on the last page.


Add or update a pool member

POST
https://dev-api-v4-main-a471234.zuplo.app
/v4/buckets/{bucketId}/ai/pools/{poolId}/members

Gives an account member a role on the pool. If they already have a role on the pool, it is changed instead, so sending the same request again changes nothing. Returns 201 when the person was added and 200 when their role was updated.

userId has to be an account member, invited or active; any other userId is a 400. Add someone who is not in the account yet with POST /v4/accounts/{accountId}/members first, and use the userId it returns right away: they can use the pool once they become active.

A person without access to the pool's project gets it too, as a project member (admin without role-based access control). Granting it takes the right to manage the project's members, so a pool admin who is not a project admin gets 403 when the person has no access to the project yet. Without role-based access control every account member is an admin, so role must be admin; member is a 400.

Add or update a pool member › path Parameters

bucketId
​string · maxLength: 64 · required

The bucket ID (bckt_…). Everything in a bucket is addressed under it.

poolId
​string · maxLength: 64 · required

The pool ID (config_…).

Add or update a pool member › Request Body

The person and the role to give them on this pool.
userId
​UserId · maxLength: 64 · required

A person, identified by their Zuplo user ID (user_…). Zuplo assigns it when the person is first added to an account, before they ever sign in, and it never changes. Every userId and ownerId in v4 is one.

Example: user_Jm5tR8wQz2KcX7vB4nLp9HdS
role
​PoolRole · enum · required

A role on a pool. admin manages the pool, its apps and members; member can view the pool and use its apps. Neither creates, links, changes or rolls the consumers of the pool's apps, which people who manage the bucket's consumers do; both read them.

Enum values:
admin
member

Add or update a pool member › Responses

The member's role was updated.

A person's access to a pool, either assigned on the pool or inherited from an ancestor pool.
poolId
​string · required

The pool.

Example: config_IM1F8Z4rUT6rDPhabvfnrt27
userId
​UserId · maxLength: 64 · required

A person, identified by their Zuplo user ID (user_…). Zuplo assigns it when the person is first added to an account, before they ever sign in, and it never changes. Every userId and ownerId in v4 is one.

Example: user_Jm5tR8wQz2KcX7vB4nLp9HdS
email
​string · email · required

The person's email address.

name
​string | null · required

The person's display name, if they set one.

role
​string | null · enum · required

The role assigned on this pool, or null if the person only inherits access.

Enum values:
admin
member
inheritedRole
​string | null · enum · required

The highest role inherited from an ancestor pool, or null.

Enum values:
admin
member
effectiveRole
​PoolRole · enum · required

A role on a pool. admin manages the pool, its apps and members; member can view the pool and use its apps. Neither creates, links, changes or rolls the consumers of the pool's apps, which people who manage the bucket's consumers do; both read them.

Enum values:
admin
member

Get a pool member

GET
https://dev-api-v4-main-a471234.zuplo.app
/v4/buckets/{bucketId}/ai/pools/{poolId}/members/{userId}

Returns one person's direct, inherited and effective role in the pool.

Get a pool member › path Parameters

bucketId
​string · maxLength: 64 · required

The bucket ID (bckt_…). Everything in a bucket is addressed under it.

poolId
​string · maxLength: 64 · required

The pool ID (config_…).

userId
​UserId · maxLength: 64 · required

The user ID of an account member (user_…).

A person, identified by their Zuplo user ID (user_…). Zuplo assigns it when the person is first added to an account, before they ever sign in, and it never changes. Every userId and ownerId in v4 is one.

Example: user_Jm5tR8wQz2KcX7vB4nLp9HdS

Get a pool member › Responses

The pool member.

A person's access to a pool, either assigned on the pool or inherited from an ancestor pool.
poolId
​string · required

The pool.

Example: config_IM1F8Z4rUT6rDPhabvfnrt27
userId
​UserId · maxLength: 64 · required

A person, identified by their Zuplo user ID (user_…). Zuplo assigns it when the person is first added to an account, before they ever sign in, and it never changes. Every userId and ownerId in v4 is one.

Example: user_Jm5tR8wQz2KcX7vB4nLp9HdS
email
​string · email · required

The person's email address.

name
​string | null · required

The person's display name, if they set one.

role
​string | null · enum · required

The role assigned on this pool, or null if the person only inherits access.

Enum values:
admin
member
inheritedRole
​string | null · enum · required

The highest role inherited from an ancestor pool, or null.

Enum values:
admin
member
effectiveRole
​PoolRole · enum · required

A role on a pool. admin manages the pool, its apps and members; member can view the pool and use its apps. Neither creates, links, changes or rolls the consumers of the pool's apps, which people who manage the bucket's consumers do; both read them.

Enum values:
admin
member

Remove a pool member

DELETE
https://dev-api-v4-main-a471234.zuplo.app
/v4/buckets/{bucketId}/ai/pools/{poolId}/members/{userId}

Removes the role assigned directly on this pool. Access inherited from an ancestor pool is unaffected. A repeated delete returns 404, which clients should treat as success.

Remove a pool member › path Parameters

bucketId
​string · maxLength: 64 · required

The bucket ID (bckt_…). Everything in a bucket is addressed under it.

poolId
​string · maxLength: 64 · required

The pool ID (config_…).

userId
​UserId · maxLength: 64 · required

The user ID of an account member (user_…).

A person, identified by their Zuplo user ID (user_…). Zuplo assigns it when the person is first added to an account, before they ever sign in, and it never changes. Every userId and ownerId in v4 is one.

Example: user_Jm5tR8wQz2KcX7vB4nLp9HdS

Remove a pool member › Responses

The member was removed.

No data returned