List identity invitations within the caller's scope
/portal/v1/accounts/{accountSlug}/applications/{appSlug}/environments/{envSlug}/workspace/invitationsThe identity invitations in this Environment that the caller can see, each with its role and node names, has_initial_assignment and a computed status. Requires invitations.manage or workspace_identity.invite somewhere in the Environment. A node-scoped caller sees only invitations anchored at a node in their subtree. Invitations with no node appear only to an Environment-wide caller. Supports status, q (name or email), invitation_id and sorting, and returns a paginated { items, pagination } with the newest first by default.
Authentication
AuthorizationJWT access token. Never send alongside X-API-Key: a request carrying both is refused.
Path Parameters
accountSlugstring Required The Account's slug. An unknown one answers 404.
appSlugstring Required The Application's slug within the Account.
envSlugstring Required The Environment's slug within the Application.
Query Parameters
pagenumber Optional Page number (1-based)
takenumber Optional Items per page (1-100, default 20)
qstring Optional Search term
sort_byenum Optional Sort column. Defaults to `created`, newest first.
orderenum Optional Sort direction
statusenum Optional Filter by invitation status
invitation_idstring Optional Fetch one invitation by id, through the same scoped query the list uses. Naming an invitation outside the caller's branches returns nothing rather than reaching past the clamp.
Responses
application/json
items *WorkspaceInvitationResponseDto[]pagination *PageMetaDto
application/json
error *ApiErrorBodyDto
application/json
error *ApiErrorBodyDto
application/json
error *ApiErrorBodyDto
application/json
error *ApiErrorBodyDto
Pagination
This endpoint returns a paginated collection. Use the query parameters below to page through results.
pagenumberPage number (1-indexed). Defaults to 1.
takenumberItems per page (1 to 100). Defaults to 20.
Each response includes an items array alongside a pagination object with item_count, page_count, has_previous_page, and has_next_page fields.
Returned object
curl -X GET "https://auth.canopy-io.com/portal/v1/accounts/value/applications/value/environments/value/workspace/invitations?page=0&take=0&q=value&sort_by=name&order=asc&status=pending&invitation_id=value" \ -H "Authorization: Bearer $CANOPY_TOKEN"
{ "items": [ { "id": "string", "email": "string", "first_name": "string", "last_name": "string", "name": "string", "role_id": "string", "role_name": "string", "node_id": "string", "node_name": "string", "has_initial_assignment": false, "status": "pending", "expires_at": "2026-04-20T12:00:00.000Z", "invited_by": "string", "created_at": "2026-04-20T12:00:00.000Z" } ], "pagination": { "page": 0, "take": 0, "item_count": 0, "page_count": 0, "has_previous_page": false, "has_next_page": false } }
Tell us how we can improve this guide.