diff --git a/main/config/nav.fr-ca.json b/main/config/nav.fr-ca.json index 814992d81a..5bb97ec772 100644 --- a/main/config/nav.fr-ca.json +++ b/main/config/nav.fr-ca.json @@ -2356,6 +2356,11 @@ "dropdown": "Authentication API", "icon": "list", "$ref": "./navigation/generated/authentication.fr-ca.json" + }, + { + "dropdown": "Teams API", + "icon": "list", + "$ref": "./navigation/generated/teams.fr-ca.json" } ] }, diff --git a/main/config/nav.ja-jp.json b/main/config/nav.ja-jp.json index 1ea7fa976a..9cba75d39e 100644 --- a/main/config/nav.ja-jp.json +++ b/main/config/nav.ja-jp.json @@ -2356,6 +2356,11 @@ "dropdown": "Authentication API", "icon": "list", "$ref": "./navigation/generated/authentication.ja-jp.json" + }, + { + "dropdown": "Teams API", + "icon": "list", + "$ref": "./navigation/generated/teams.ja-jp.json" } ] }, diff --git a/main/config/navigation/apis.json b/main/config/navigation/apis.json index 3882a72266..b54a32507a 100644 --- a/main/config/navigation/apis.json +++ b/main/config/navigation/apis.json @@ -27,6 +27,12 @@ "root": "docs/api/authentication", "icon": "list", "$ref": "./generated/authentication.en.json" + }, + { + "group": "Teams API", + "root": "docs/api/teams", + "icon": "list", + "$ref": "./generated/teams.en.json" } ] } diff --git a/main/config/navigation/generated/teams.en.json b/main/config/navigation/generated/teams.en.json new file mode 100644 index 0000000000..ce5ad92ad5 --- /dev/null +++ b/main/config/navigation/generated/teams.en.json @@ -0,0 +1,40 @@ +{ + "pages": [ + { + "group": "Members", + "pages": [ + "docs/api/teams/members/list-members", + "docs/api/teams/members/invite-member", + "docs/api/teams/members/get-member", + "docs/api/teams/members/delete-member", + "docs/api/teams/members/update-member-role", + "docs/api/teams/members/add-member-tenants", + "docs/api/teams/members/update-member-tenants", + "docs/api/teams/members/remove-member-tenant", + "docs/api/teams/members/list-tenant-access-by-environment" + ] + }, + { + "group": "Tenants", + "pages": [ + "docs/api/teams/tenants/create-tenant", + "docs/api/teams/tenants/list-tenants", + "docs/api/teams/tenants/get-tenant", + "docs/api/teams/tenants/delete-tenant", + "docs/api/teams/tenants/list-tenant-members" + ] + }, + { + "group": "Environments", + "pages": [ + "docs/api/teams/environments/get-environments" + ] + }, + { + "group": "Activity", + "pages": [ + "docs/api/teams/activity/list-activity-logs" + ] + } + ] +} diff --git a/main/config/navigation/generated/teams.fr-ca.json b/main/config/navigation/generated/teams.fr-ca.json new file mode 100644 index 0000000000..ae0acfb0b3 --- /dev/null +++ b/main/config/navigation/generated/teams.fr-ca.json @@ -0,0 +1,40 @@ +{ + "pages": [ + { + "group": "Members", + "pages": [ + "docs/fr-ca/api/teams/members/list-members", + "docs/fr-ca/api/teams/members/invite-member", + "docs/fr-ca/api/teams/members/get-member", + "docs/fr-ca/api/teams/members/delete-member", + "docs/fr-ca/api/teams/members/update-member-role", + "docs/fr-ca/api/teams/members/add-member-tenants", + "docs/fr-ca/api/teams/members/update-member-tenants", + "docs/fr-ca/api/teams/members/remove-member-tenant", + "docs/fr-ca/api/teams/members/list-tenant-access-by-environment" + ] + }, + { + "group": "Tenants", + "pages": [ + "docs/fr-ca/api/teams/tenants/create-tenant", + "docs/fr-ca/api/teams/tenants/list-tenants", + "docs/fr-ca/api/teams/tenants/get-tenant", + "docs/fr-ca/api/teams/tenants/delete-tenant", + "docs/fr-ca/api/teams/tenants/list-tenant-members" + ] + }, + { + "group": "Environments", + "pages": [ + "docs/fr-ca/api/teams/environments/get-environments" + ] + }, + { + "group": "Activity", + "pages": [ + "docs/fr-ca/api/teams/activity/list-activity-logs" + ] + } + ] +} diff --git a/main/config/navigation/generated/teams.ja-jp.json b/main/config/navigation/generated/teams.ja-jp.json new file mode 100644 index 0000000000..38ff063e63 --- /dev/null +++ b/main/config/navigation/generated/teams.ja-jp.json @@ -0,0 +1,40 @@ +{ + "pages": [ + { + "group": "Members", + "pages": [ + "docs/ja-jp/api/teams/members/list-members", + "docs/ja-jp/api/teams/members/invite-member", + "docs/ja-jp/api/teams/members/get-member", + "docs/ja-jp/api/teams/members/delete-member", + "docs/ja-jp/api/teams/members/update-member-role", + "docs/ja-jp/api/teams/members/add-member-tenants", + "docs/ja-jp/api/teams/members/update-member-tenants", + "docs/ja-jp/api/teams/members/remove-member-tenant", + "docs/ja-jp/api/teams/members/list-tenant-access-by-environment" + ] + }, + { + "group": "Tenants", + "pages": [ + "docs/ja-jp/api/teams/tenants/create-tenant", + "docs/ja-jp/api/teams/tenants/list-tenants", + "docs/ja-jp/api/teams/tenants/get-tenant", + "docs/ja-jp/api/teams/tenants/delete-tenant", + "docs/ja-jp/api/teams/tenants/list-tenant-members" + ] + }, + { + "group": "Environments", + "pages": [ + "docs/ja-jp/api/teams/environments/get-environments" + ] + }, + { + "group": "Activity", + "pages": [ + "docs/ja-jp/api/teams/activity/list-activity-logs" + ] + } + ] +} diff --git a/main/docs/api/teams.mdx b/main/docs/api/teams.mdx new file mode 100644 index 0000000000..8d224f7571 --- /dev/null +++ b/main/docs/api/teams.mdx @@ -0,0 +1,4 @@ +--- +title: "Teams API" +description: "Documentation for Auth0's Teams API" +--- \ No newline at end of file diff --git a/main/docs/api/teams/_metadata.json b/main/docs/api/teams/_metadata.json new file mode 100644 index 0000000000..ef8a1a1ee6 --- /dev/null +++ b/main/docs/api/teams/_metadata.json @@ -0,0 +1,4 @@ +{ + "oasVersion": "1.9245.0", + "snippetVersion": "not found" +} diff --git a/main/docs/api/teams/activity/list-activity-logs.mdx b/main/docs/api/teams/activity/list-activity-logs.mdx new file mode 100644 index 0000000000..e0eb8326ed --- /dev/null +++ b/main/docs/api/teams/activity/list-activity-logs.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas get /api/activity/logs +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/api/teams/environments/get-environments.mdx b/main/docs/api/teams/environments/get-environments.mdx new file mode 100644 index 0000000000..e9770ff7ba --- /dev/null +++ b/main/docs/api/teams/environments/get-environments.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas get /api/environments +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/api/teams/members/add-member-tenants.mdx b/main/docs/api/teams/members/add-member-tenants.mdx new file mode 100644 index 0000000000..f200dc7c63 --- /dev/null +++ b/main/docs/api/teams/members/add-member-tenants.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas put /api/members/{id}/tenants +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/api/teams/members/delete-member.mdx b/main/docs/api/teams/members/delete-member.mdx new file mode 100644 index 0000000000..7a664f59bb --- /dev/null +++ b/main/docs/api/teams/members/delete-member.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas delete /api/members/{id} +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/api/teams/members/get-member.mdx b/main/docs/api/teams/members/get-member.mdx new file mode 100644 index 0000000000..1615ddb83a --- /dev/null +++ b/main/docs/api/teams/members/get-member.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas get /api/members/{id} +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/api/teams/members/invite-member.mdx b/main/docs/api/teams/members/invite-member.mdx new file mode 100644 index 0000000000..90355fcfb3 --- /dev/null +++ b/main/docs/api/teams/members/invite-member.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas post /api/members +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/api/teams/members/list-members.mdx b/main/docs/api/teams/members/list-members.mdx new file mode 100644 index 0000000000..21b27baf69 --- /dev/null +++ b/main/docs/api/teams/members/list-members.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas get /api/members +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/api/teams/members/list-tenant-access-by-environment.mdx b/main/docs/api/teams/members/list-tenant-access-by-environment.mdx new file mode 100644 index 0000000000..02e4067109 --- /dev/null +++ b/main/docs/api/teams/members/list-tenant-access-by-environment.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas get /api/members/{id}/tenants/{environment} +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/api/teams/members/remove-member-tenant.mdx b/main/docs/api/teams/members/remove-member-tenant.mdx new file mode 100644 index 0000000000..3c288b6538 --- /dev/null +++ b/main/docs/api/teams/members/remove-member-tenant.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas delete /api/members/{id}/tenants +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/api/teams/members/update-member-role.mdx b/main/docs/api/teams/members/update-member-role.mdx new file mode 100644 index 0000000000..eef80b3356 --- /dev/null +++ b/main/docs/api/teams/members/update-member-role.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas patch /api/members/{id} +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/api/teams/members/update-member-tenants.mdx b/main/docs/api/teams/members/update-member-tenants.mdx new file mode 100644 index 0000000000..404abfd245 --- /dev/null +++ b/main/docs/api/teams/members/update-member-tenants.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas patch /api/members/{id}/tenants +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/api/teams/tenants/create-tenant.mdx b/main/docs/api/teams/tenants/create-tenant.mdx new file mode 100644 index 0000000000..c6cbd8024f --- /dev/null +++ b/main/docs/api/teams/tenants/create-tenant.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas post /api/tenants +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/api/teams/tenants/delete-tenant.mdx b/main/docs/api/teams/tenants/delete-tenant.mdx new file mode 100644 index 0000000000..e76d4b17c5 --- /dev/null +++ b/main/docs/api/teams/tenants/delete-tenant.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas delete /api/tenants/{tenantId} +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/api/teams/tenants/get-tenant.mdx b/main/docs/api/teams/tenants/get-tenant.mdx new file mode 100644 index 0000000000..4b42735d00 --- /dev/null +++ b/main/docs/api/teams/tenants/get-tenant.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas get /api/tenants/{tenantId} +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/api/teams/tenants/list-tenant-members.mdx b/main/docs/api/teams/tenants/list-tenant-members.mdx new file mode 100644 index 0000000000..7f954557e7 --- /dev/null +++ b/main/docs/api/teams/tenants/list-tenant-members.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas get /api/tenants/{tenantId}/members +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/api/teams/tenants/list-tenants.mdx b/main/docs/api/teams/tenants/list-tenants.mdx new file mode 100644 index 0000000000..09ae126ef7 --- /dev/null +++ b/main/docs/api/teams/tenants/list-tenants.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas get /api/tenants +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/fr-ca/api/teams.mdx b/main/docs/fr-ca/api/teams.mdx new file mode 100644 index 0000000000..8d224f7571 --- /dev/null +++ b/main/docs/fr-ca/api/teams.mdx @@ -0,0 +1,4 @@ +--- +title: "Teams API" +description: "Documentation for Auth0's Teams API" +--- \ No newline at end of file diff --git a/main/docs/fr-ca/api/teams/_metadata.json b/main/docs/fr-ca/api/teams/_metadata.json new file mode 100644 index 0000000000..ef8a1a1ee6 --- /dev/null +++ b/main/docs/fr-ca/api/teams/_metadata.json @@ -0,0 +1,4 @@ +{ + "oasVersion": "1.9245.0", + "snippetVersion": "not found" +} diff --git a/main/docs/fr-ca/api/teams/activity/list-activity-logs.mdx b/main/docs/fr-ca/api/teams/activity/list-activity-logs.mdx new file mode 100644 index 0000000000..e0eb8326ed --- /dev/null +++ b/main/docs/fr-ca/api/teams/activity/list-activity-logs.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas get /api/activity/logs +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/fr-ca/api/teams/environments/get-environments.mdx b/main/docs/fr-ca/api/teams/environments/get-environments.mdx new file mode 100644 index 0000000000..e9770ff7ba --- /dev/null +++ b/main/docs/fr-ca/api/teams/environments/get-environments.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas get /api/environments +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/fr-ca/api/teams/members/add-member-tenants.mdx b/main/docs/fr-ca/api/teams/members/add-member-tenants.mdx new file mode 100644 index 0000000000..f200dc7c63 --- /dev/null +++ b/main/docs/fr-ca/api/teams/members/add-member-tenants.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas put /api/members/{id}/tenants +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/fr-ca/api/teams/members/delete-member.mdx b/main/docs/fr-ca/api/teams/members/delete-member.mdx new file mode 100644 index 0000000000..7a664f59bb --- /dev/null +++ b/main/docs/fr-ca/api/teams/members/delete-member.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas delete /api/members/{id} +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/fr-ca/api/teams/members/get-member.mdx b/main/docs/fr-ca/api/teams/members/get-member.mdx new file mode 100644 index 0000000000..1615ddb83a --- /dev/null +++ b/main/docs/fr-ca/api/teams/members/get-member.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas get /api/members/{id} +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/fr-ca/api/teams/members/invite-member.mdx b/main/docs/fr-ca/api/teams/members/invite-member.mdx new file mode 100644 index 0000000000..90355fcfb3 --- /dev/null +++ b/main/docs/fr-ca/api/teams/members/invite-member.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas post /api/members +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/fr-ca/api/teams/members/list-members.mdx b/main/docs/fr-ca/api/teams/members/list-members.mdx new file mode 100644 index 0000000000..21b27baf69 --- /dev/null +++ b/main/docs/fr-ca/api/teams/members/list-members.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas get /api/members +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/fr-ca/api/teams/members/list-tenant-access-by-environment.mdx b/main/docs/fr-ca/api/teams/members/list-tenant-access-by-environment.mdx new file mode 100644 index 0000000000..02e4067109 --- /dev/null +++ b/main/docs/fr-ca/api/teams/members/list-tenant-access-by-environment.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas get /api/members/{id}/tenants/{environment} +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/fr-ca/api/teams/members/remove-member-tenant.mdx b/main/docs/fr-ca/api/teams/members/remove-member-tenant.mdx new file mode 100644 index 0000000000..3c288b6538 --- /dev/null +++ b/main/docs/fr-ca/api/teams/members/remove-member-tenant.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas delete /api/members/{id}/tenants +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/fr-ca/api/teams/members/update-member-role.mdx b/main/docs/fr-ca/api/teams/members/update-member-role.mdx new file mode 100644 index 0000000000..eef80b3356 --- /dev/null +++ b/main/docs/fr-ca/api/teams/members/update-member-role.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas patch /api/members/{id} +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/fr-ca/api/teams/members/update-member-tenants.mdx b/main/docs/fr-ca/api/teams/members/update-member-tenants.mdx new file mode 100644 index 0000000000..404abfd245 --- /dev/null +++ b/main/docs/fr-ca/api/teams/members/update-member-tenants.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas patch /api/members/{id}/tenants +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/fr-ca/api/teams/tenants/create-tenant.mdx b/main/docs/fr-ca/api/teams/tenants/create-tenant.mdx new file mode 100644 index 0000000000..c6cbd8024f --- /dev/null +++ b/main/docs/fr-ca/api/teams/tenants/create-tenant.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas post /api/tenants +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/fr-ca/api/teams/tenants/delete-tenant.mdx b/main/docs/fr-ca/api/teams/tenants/delete-tenant.mdx new file mode 100644 index 0000000000..e76d4b17c5 --- /dev/null +++ b/main/docs/fr-ca/api/teams/tenants/delete-tenant.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas delete /api/tenants/{tenantId} +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/fr-ca/api/teams/tenants/get-tenant.mdx b/main/docs/fr-ca/api/teams/tenants/get-tenant.mdx new file mode 100644 index 0000000000..4b42735d00 --- /dev/null +++ b/main/docs/fr-ca/api/teams/tenants/get-tenant.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas get /api/tenants/{tenantId} +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/fr-ca/api/teams/tenants/list-tenant-members.mdx b/main/docs/fr-ca/api/teams/tenants/list-tenant-members.mdx new file mode 100644 index 0000000000..7f954557e7 --- /dev/null +++ b/main/docs/fr-ca/api/teams/tenants/list-tenant-members.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas get /api/tenants/{tenantId}/members +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/fr-ca/api/teams/tenants/list-tenants.mdx b/main/docs/fr-ca/api/teams/tenants/list-tenants.mdx new file mode 100644 index 0000000000..09ae126ef7 --- /dev/null +++ b/main/docs/fr-ca/api/teams/tenants/list-tenants.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas get /api/tenants +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/ja-jp/api/teams.mdx b/main/docs/ja-jp/api/teams.mdx new file mode 100644 index 0000000000..8d224f7571 --- /dev/null +++ b/main/docs/ja-jp/api/teams.mdx @@ -0,0 +1,4 @@ +--- +title: "Teams API" +description: "Documentation for Auth0's Teams API" +--- \ No newline at end of file diff --git a/main/docs/ja-jp/api/teams/_metadata.json b/main/docs/ja-jp/api/teams/_metadata.json new file mode 100644 index 0000000000..ef8a1a1ee6 --- /dev/null +++ b/main/docs/ja-jp/api/teams/_metadata.json @@ -0,0 +1,4 @@ +{ + "oasVersion": "1.9245.0", + "snippetVersion": "not found" +} diff --git a/main/docs/ja-jp/api/teams/activity/list-activity-logs.mdx b/main/docs/ja-jp/api/teams/activity/list-activity-logs.mdx new file mode 100644 index 0000000000..e0eb8326ed --- /dev/null +++ b/main/docs/ja-jp/api/teams/activity/list-activity-logs.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas get /api/activity/logs +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/ja-jp/api/teams/environments/get-environments.mdx b/main/docs/ja-jp/api/teams/environments/get-environments.mdx new file mode 100644 index 0000000000..e9770ff7ba --- /dev/null +++ b/main/docs/ja-jp/api/teams/environments/get-environments.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas get /api/environments +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/ja-jp/api/teams/members/add-member-tenants.mdx b/main/docs/ja-jp/api/teams/members/add-member-tenants.mdx new file mode 100644 index 0000000000..f200dc7c63 --- /dev/null +++ b/main/docs/ja-jp/api/teams/members/add-member-tenants.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas put /api/members/{id}/tenants +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/ja-jp/api/teams/members/delete-member.mdx b/main/docs/ja-jp/api/teams/members/delete-member.mdx new file mode 100644 index 0000000000..7a664f59bb --- /dev/null +++ b/main/docs/ja-jp/api/teams/members/delete-member.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas delete /api/members/{id} +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/ja-jp/api/teams/members/get-member.mdx b/main/docs/ja-jp/api/teams/members/get-member.mdx new file mode 100644 index 0000000000..1615ddb83a --- /dev/null +++ b/main/docs/ja-jp/api/teams/members/get-member.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas get /api/members/{id} +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/ja-jp/api/teams/members/invite-member.mdx b/main/docs/ja-jp/api/teams/members/invite-member.mdx new file mode 100644 index 0000000000..90355fcfb3 --- /dev/null +++ b/main/docs/ja-jp/api/teams/members/invite-member.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas post /api/members +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/ja-jp/api/teams/members/list-members.mdx b/main/docs/ja-jp/api/teams/members/list-members.mdx new file mode 100644 index 0000000000..21b27baf69 --- /dev/null +++ b/main/docs/ja-jp/api/teams/members/list-members.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas get /api/members +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/ja-jp/api/teams/members/list-tenant-access-by-environment.mdx b/main/docs/ja-jp/api/teams/members/list-tenant-access-by-environment.mdx new file mode 100644 index 0000000000..02e4067109 --- /dev/null +++ b/main/docs/ja-jp/api/teams/members/list-tenant-access-by-environment.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas get /api/members/{id}/tenants/{environment} +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/ja-jp/api/teams/members/remove-member-tenant.mdx b/main/docs/ja-jp/api/teams/members/remove-member-tenant.mdx new file mode 100644 index 0000000000..3c288b6538 --- /dev/null +++ b/main/docs/ja-jp/api/teams/members/remove-member-tenant.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas delete /api/members/{id}/tenants +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/ja-jp/api/teams/members/update-member-role.mdx b/main/docs/ja-jp/api/teams/members/update-member-role.mdx new file mode 100644 index 0000000000..eef80b3356 --- /dev/null +++ b/main/docs/ja-jp/api/teams/members/update-member-role.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas patch /api/members/{id} +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/ja-jp/api/teams/members/update-member-tenants.mdx b/main/docs/ja-jp/api/teams/members/update-member-tenants.mdx new file mode 100644 index 0000000000..404abfd245 --- /dev/null +++ b/main/docs/ja-jp/api/teams/members/update-member-tenants.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas patch /api/members/{id}/tenants +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/ja-jp/api/teams/tenants/create-tenant.mdx b/main/docs/ja-jp/api/teams/tenants/create-tenant.mdx new file mode 100644 index 0000000000..c6cbd8024f --- /dev/null +++ b/main/docs/ja-jp/api/teams/tenants/create-tenant.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas post /api/tenants +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/ja-jp/api/teams/tenants/delete-tenant.mdx b/main/docs/ja-jp/api/teams/tenants/delete-tenant.mdx new file mode 100644 index 0000000000..e76d4b17c5 --- /dev/null +++ b/main/docs/ja-jp/api/teams/tenants/delete-tenant.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas delete /api/tenants/{tenantId} +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/ja-jp/api/teams/tenants/get-tenant.mdx b/main/docs/ja-jp/api/teams/tenants/get-tenant.mdx new file mode 100644 index 0000000000..4b42735d00 --- /dev/null +++ b/main/docs/ja-jp/api/teams/tenants/get-tenant.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas get /api/tenants/{tenantId} +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/ja-jp/api/teams/tenants/list-tenant-members.mdx b/main/docs/ja-jp/api/teams/tenants/list-tenant-members.mdx new file mode 100644 index 0000000000..7f954557e7 --- /dev/null +++ b/main/docs/ja-jp/api/teams/tenants/list-tenant-members.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas get /api/tenants/{tenantId}/members +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/ja-jp/api/teams/tenants/list-tenants.mdx b/main/docs/ja-jp/api/teams/tenants/list-tenants.mdx new file mode 100644 index 0000000000..09ae126ef7 --- /dev/null +++ b/main/docs/ja-jp/api/teams/tenants/list-tenants.mdx @@ -0,0 +1,11 @@ +--- +openapi: teams-api-oas get /api/tenants +playground: simple +deprecated: false +--- + +import { ApiReleaseLifecycle } from "/snippets/ApiReleaseLifecycle.jsx"; +import { Scopes } from "/snippets/ApiScopes.jsx"; + + + \ No newline at end of file diff --git a/main/docs/oas/teams/teams-api-oas.json b/main/docs/oas/teams/teams-api-oas.json new file mode 100644 index 0000000000..6fa4cc20f5 --- /dev/null +++ b/main/docs/oas/teams/teams-api-oas.json @@ -0,0 +1,3049 @@ +{ + "openapi": "3.1.0", + "info": { + "contact": {}, + "title": "Teams API", + "version": "1.0.0", + "description": "The Teams API provides programmatic access to manage team members, tenants, environments, and activity logs for your Auth0 team." + }, + "servers": [ + { + "url": "https://{teamSlug}.teams.auth0.com", + "description": "The base URL for Teams API", + "variables": { + "teamSlug": { + "default": "teamSlug", + "description": "Team slug" + } + } + } + ], + "security": [ + { + "Bearer": [] + } + ], + "tags": [ + { + "name": "Members", + "description": "Operations related to team members" + }, + { + "name": "Tenants", + "description": "Operations related to tenants" + }, + { + "name": "Environments", + "description": "Operations related to environments" + }, + { + "name": "Activity", + "description": "Operations related to team activity logs" + } + ], + "paths": { + "/api/members": { + "get": { + "operationId": "listMembers", + "tags": [ + "Members" + ], + "summary": "Retrieve a paginated list of all team members", + "description": "This endpoint retrieves a paginated list of all members under the current team. It supports checkpoint-based pagination for efficient retrieval of large datasets", + "x-operation-name": "list", + "x-operation-group": [ + "members" + ], + "x-operation-request-parameters-name": "ListMembersRequestParameters", + "x-release-lifecycle": "beta", + "parameters": [ + { + "$ref": "#/components/parameters/Take" + }, + { + "$ref": "#/components/parameters/From" + } + ], + "security": [ + { + "Bearer": [ + "read:members" + ] + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/ListMembersResponse" + }, + "400": { + "$ref": "#/components/responses/BadRequestResponse" + }, + "401": { + "$ref": "#/components/responses/UnauthorizedResponse" + }, + "403": { + "$ref": "#/components/responses/ForbiddenResponse" + }, + "404": { + "$ref": "#/components/responses/NotFoundResponse" + }, + "429": { + "$ref": "#/components/responses/TooManyRequestsResponse" + }, + "500": { + "$ref": "#/components/responses/InternalServerErrorResponse" + } + }, + "x-codeSamples": [] + }, + "post": { + "operationId": "inviteMember", + "tags": [ + "Members" + ], + "summary": "Invite a new team member", + "description": "This endpoint invites a new member to the team and optionally grants them access to one or more tenants with specified roles", + "x-operation-name": "invite", + "x-operation-group": [ + "members" + ], + "x-release-lifecycle": "beta", + "security": [ + { + "Bearer": [ + "create:invitations" + ] + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/InviteMembersRequest" + }, + "responses": { + "201": { + "$ref": "#/components/responses/InviteMembersResponse" + }, + "400": { + "$ref": "#/components/responses/BadRequestResponse" + }, + "401": { + "$ref": "#/components/responses/UnauthorizedResponse" + }, + "403": { + "$ref": "#/components/responses/ForbiddenResponse" + }, + "404": { + "$ref": "#/components/responses/NotFoundResponse" + }, + "429": { + "$ref": "#/components/responses/TooManyRequestsResponse" + }, + "500": { + "$ref": "#/components/responses/InternalServerErrorResponse" + } + }, + "x-codeSamples": [] + } + }, + "/api/tenants": { + "post": { + "operationId": "createTenant", + "tags": [ + "Tenants" + ], + "summary": "Create a tenant under the current team", + "description": "This endpoint creates a new tenant under your team. Upon successful creation, the response includes the tenant's details and management client credentials. The tenant type (public or private) is determined by the attributes in the request payload. Refer to the payload schema for required attributes.", + "x-operation-name": "create", + "x-operation-group": [ + "tenants" + ], + "x-release-lifecycle": "beta", + "security": [ + { + "Bearer": [ + "create:tenants" + ] + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/CreateTenantsRequest" + }, + "responses": { + "201": { + "$ref": "#/components/responses/CreateTenantsResponse" + }, + "400": { + "$ref": "#/components/responses/BadRequestResponse" + }, + "401": { + "$ref": "#/components/responses/UnauthorizedResponse" + }, + "403": { + "$ref": "#/components/responses/ForbiddenResponse" + }, + "404": { + "$ref": "#/components/responses/NotFoundResponse" + }, + "409": { + "$ref": "#/components/responses/ConflictResponse" + }, + "429": { + "$ref": "#/components/responses/TooManyRequestsResponse" + }, + "500": { + "$ref": "#/components/responses/InternalServerErrorResponse" + } + }, + "x-codeSamples": [] + }, + "get": { + "operationId": "listTenants", + "tags": [ + "Tenants" + ], + "summary": "List all tenants under the current team", + "description": "This endpoint retrieves a paginated list of tenants for a specified team. It supports cursor-based pagination to ensure efficient data retrieval across large datasets. If the private cloud support beta is enabled for the team, the response includes both public and private tenants; otherwise, only public tenants are returned. To navigate results, the next cursor from the response should be used to fetch subsequent pages.", + "x-operation-name": "list", + "x-operation-group": [ + "tenants" + ], + "x-operation-request-parameters-name": "ListTenantsRequestParameters", + "x-release-lifecycle": "beta", + "parameters": [ + { + "$ref": "#/components/parameters/Take" + }, + { + "$ref": "#/components/parameters/From" + }, + { + "$ref": "#/components/parameters/Sort" + }, + { + "in": "query", + "name": "environment", + "required": false, + "description": "Filter tenants by environment. For public cloud tenants, use the short name (e.g., 'US-3', 'EU-1'). For private cloud tenants, use the space name (e.g., 'acme-dev').", + "schema": { + "type": "string", + "minLength": 1 + }, + "examples": { + "us3": { + "value": "US-3", + "summary": "Public cloud US environment" + }, + "eu1": { + "value": "EU-1", + "summary": "Public cloud EU environment" + }, + "privateCloud": { + "value": "acme-dev", + "summary": "Private cloud space name" + } + } + }, + { + "in": "query", + "name": "environment_tag", + "required": false, + "description": "Filter tenants by environment tag", + "schema": { + "$ref": "#/components/schemas/EnvironmentTypeEnum" + }, + "example": "development" + }, + { + "in": "query", + "name": "locality", + "required": false, + "description": "Filter tenants by locality. For public cloud tenants, matches locality (e.g., 'us', 'eu'). For private cloud tenants, matches the space's primary locality (e.g., 'virginia', 'frankfurt').", + "schema": { + "type": "string", + "minLength": 1 + }, + "examples": { + "us": { + "value": "us", + "summary": "Public cloud US locality" + }, + "eu": { + "value": "eu", + "summary": "Public cloud EU locality" + }, + "virginia": { + "value": "virginia", + "summary": "Private cloud Virginia locality" + }, + "frankfurt": { + "value": "frankfurt", + "summary": "Private cloud Frankfurt locality" + } + } + } + ], + "security": [ + { + "Bearer": [ + "read:tenants" + ] + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/ListTenantsResponse" + }, + "400": { + "$ref": "#/components/responses/BadRequestResponse" + }, + "401": { + "$ref": "#/components/responses/UnauthorizedResponse" + }, + "403": { + "$ref": "#/components/responses/ForbiddenResponse" + }, + "404": { + "$ref": "#/components/responses/NotFoundResponse" + }, + "429": { + "$ref": "#/components/responses/TooManyRequestsResponse" + }, + "500": { + "$ref": "#/components/responses/InternalServerErrorResponse" + } + }, + "x-codeSamples": [] + } + }, + "/api/environments": { + "get": { + "operationId": "getEnvironments", + "tags": [ + "Environments" + ], + "summary": "Retrieve environment list of a team", + "description": "This endpoint provide a list of environments associated with the Team where tenants exist.", + "x-operation-name": "list", + "x-operation-group": [ + "environments" + ], + "x-release-lifecycle": "beta", + "security": [ + { + "Bearer": [ + "read:members" + ] + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/ListEnvironmentsResponse" + }, + "401": { + "$ref": "#/components/responses/UnauthorizedResponse" + }, + "403": { + "$ref": "#/components/responses/ForbiddenResponse" + }, + "404": { + "$ref": "#/components/responses/NotFoundResponse" + }, + "429": { + "$ref": "#/components/responses/TooManyRequestsResponse" + }, + "500": { + "$ref": "#/components/responses/InternalServerErrorResponse" + } + }, + "x-codeSamples": [] + } + }, + "/api/tenants/{tenantId}": { + "get": { + "operationId": "getTenant", + "tags": [ + "Tenants" + ], + "summary": "Retrieve all metadata for a specific tenant, including domain, environment, locality, and creation date", + "description": "This endpoint retrieves all metadata for a specific tenant, including the tenant's unique ID, name, domain, environment, locality, environment type, and creation date. It is useful for obtaining comprehensive information about a tenant for display in dashboards, auditing, or automated management tasks. The response includes all relevant fields required to identify and manage the tenant programmatically", + "x-operation-name": "get", + "x-operation-group": [ + "tenants" + ], + "x-release-lifecycle": "beta", + "security": [ + { + "Bearer": [ + "read:tenants" + ] + } + ], + "parameters": [ + { + "in": "path", + "name": "tenantId", + "required": true, + "description": "The unique ID of the tenant to retrieve (UUID format)", + "schema": { + "$ref": "#/components/schemas/TenantId" + } + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/GetTenantsResponse" + }, + "400": { + "$ref": "#/components/responses/BadRequestResponse" + }, + "401": { + "$ref": "#/components/responses/UnauthorizedResponse" + }, + "403": { + "$ref": "#/components/responses/ForbiddenResponse" + }, + "404": { + "$ref": "#/components/responses/NotFoundResponse" + }, + "429": { + "$ref": "#/components/responses/TooManyRequestsResponse" + }, + "500": { + "$ref": "#/components/responses/InternalServerErrorResponse" + } + }, + "x-codeSamples": [] + }, + "delete": { + "operationId": "deleteTenant", + "tags": [ + "Tenants" + ], + "summary": "Delete a tenant from the current team", + "description": "Delete a tenant from the current team", + "x-operation-name": "delete", + "x-operation-group": [ + "tenants" + ], + "x-release-lifecycle": "beta", + "security": [ + { + "Bearer": [ + "delete:tenants" + ] + } + ], + "parameters": [ + { + "in": "path", + "name": "tenantId", + "required": true, + "description": "The id of the tenant to delete", + "schema": { + "$ref": "#/components/schemas/TenantId" + } + } + ], + "responses": { + "204": { + "$ref": "#/components/responses/EmptyResponse" + }, + "400": { + "$ref": "#/components/responses/BadRequestResponse" + }, + "401": { + "$ref": "#/components/responses/UnauthorizedResponse" + }, + "403": { + "$ref": "#/components/responses/ForbiddenResponse" + }, + "404": { + "$ref": "#/components/responses/NotFoundResponse" + }, + "429": { + "$ref": "#/components/responses/TooManyRequestsResponse" + }, + "500": { + "$ref": "#/components/responses/InternalServerErrorResponse" + } + }, + "x-codeSamples": [] + } + }, + "/api/tenants/{tenantId}/members": { + "get": { + "operationId": "listTenantMembers", + "tags": [ + "Tenants", + "Members" + ], + "summary": "Retrieve a paginated list of members for a specific tenant.", + "description": "This endpoint retrieves a paginated list of all members for a specific tenant.", + "x-operation-name": "list", + "x-operation-group": [ + "tenants", + "members" + ], + "x-operation-request-parameters-name": "ListTenantsMembersRequestParameters", + "x-release-lifecycle": "beta", + "security": [ + { + "Bearer": [ + "read:members" + ] + } + ], + "parameters": [ + { + "in": "path", + "name": "tenantId", + "required": true, + "description": "The unique ID of the tenant.", + "schema": { + "$ref": "#/components/schemas/TenantId" + } + }, + { + "$ref": "#/components/parameters/Take" + }, + { + "$ref": "#/components/parameters/From" + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/ListTenantsMembersResponse" + }, + "400": { + "$ref": "#/components/responses/BadRequestResponse" + }, + "401": { + "$ref": "#/components/responses/UnauthorizedResponse" + }, + "403": { + "$ref": "#/components/responses/ForbiddenResponse" + }, + "404": { + "$ref": "#/components/responses/NotFoundResponse" + }, + "429": { + "$ref": "#/components/responses/TooManyRequestsResponse" + }, + "500": { + "$ref": "#/components/responses/InternalServerErrorResponse" + } + }, + "x-codeSamples": [] + } + }, + "/api/members/{id}": { + "get": { + "operationId": "getMember", + "tags": [ + "Members" + ], + "summary": "Retrieve basic information for a specific team member", + "description": "Returns the team member's identity and team-level role. Tenant access is retrieved via /api/members/{id}/tenants/{environment}.", + "x-operation-name": "get", + "x-operation-group": [ + "members" + ], + "x-release-lifecycle": "beta", + "security": [ + { + "Bearer": [ + "read:members" + ] + } + ], + "parameters": [ + { + "in": "path", + "name": "id", + "required": true, + "description": "The unique ID of the team member to retrieve.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/GetMembersResponse" + }, + "400": { + "$ref": "#/components/responses/BadRequestResponse" + }, + "401": { + "$ref": "#/components/responses/UnauthorizedResponse" + }, + "403": { + "$ref": "#/components/responses/ForbiddenResponse" + }, + "404": { + "$ref": "#/components/responses/NotFoundResponse" + }, + "429": { + "$ref": "#/components/responses/TooManyRequestsResponse" + }, + "500": { + "$ref": "#/components/responses/InternalServerErrorResponse" + } + }, + "x-codeSamples": [] + }, + "delete": { + "operationId": "deleteMember", + "tags": [ + "Members" + ], + "summary": "Delete a team member", + "description": "This endpoint deletes a team member from the team.", + "x-operation-name": "delete", + "x-operation-group": [ + "members" + ], + "x-release-lifecycle": "beta", + "security": [ + { + "Bearer": [ + "delete:members" + ] + } + ], + "parameters": [ + { + "in": "path", + "name": "id", + "required": true, + "description": "The unique ID of the team member to delete.", + "schema": { + "type": "string" + } + } + ], + "responses": { + "204": { + "$ref": "#/components/responses/EmptyResponse" + }, + "400": { + "$ref": "#/components/responses/BadRequestResponse" + }, + "401": { + "$ref": "#/components/responses/UnauthorizedResponse" + }, + "403": { + "$ref": "#/components/responses/ForbiddenResponse" + }, + "404": { + "$ref": "#/components/responses/NotFoundResponse" + }, + "429": { + "$ref": "#/components/responses/TooManyRequestsResponse" + }, + "500": { + "$ref": "#/components/responses/InternalServerErrorResponse" + } + }, + "x-codeSamples": [] + }, + "patch": { + "operationId": "updateMemberRole", + "tags": [ + "Members" + ], + "summary": "Update a team member's role", + "description": "This endpoint can be used to change the team-level role for the team member", + "x-operation-name": "update", + "x-operation-group": [ + "members" + ], + "x-release-lifecycle": "beta", + "security": [ + { + "Bearer": [ + "update:members" + ] + } + ], + "parameters": [ + { + "in": "path", + "name": "id", + "required": true, + "description": "The unique ID of the team member to update", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/UpdateMembersRequest" + }, + "responses": { + "200": { + "$ref": "#/components/responses/UpdateMembersResponse" + }, + "400": { + "$ref": "#/components/responses/BadRequestResponse" + }, + "401": { + "$ref": "#/components/responses/UnauthorizedResponse" + }, + "403": { + "$ref": "#/components/responses/ForbiddenResponse" + }, + "404": { + "$ref": "#/components/responses/NotFoundResponse" + }, + "429": { + "$ref": "#/components/responses/TooManyRequestsResponse" + }, + "500": { + "$ref": "#/components/responses/InternalServerErrorResponse" + } + }, + "x-codeSamples": [] + } + }, + "/api/members/{id}/tenants": { + "put": { + "operationId": "addMemberTenants", + "tags": [ + "Members", + "Tenants" + ], + "summary": "Add to a team member's tenant access", + "description": "This endpoint can be used to add new tenants access", + "x-operation-name": "create", + "x-operation-group": [ + "members", + "tenants" + ], + "x-release-lifecycle": "beta", + "security": [ + { + "Bearer": [ + "update:members" + ] + } + ], + "parameters": [ + { + "in": "path", + "name": "id", + "required": true, + "description": "The unique ID of the team member to update", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/CreateMembersTenantsRequest" + }, + "responses": { + "200": { + "$ref": "#/components/responses/CreateMembersTenantsResponse" + }, + "204": { + "$ref": "#/components/responses/EmptyResponse" + }, + "400": { + "$ref": "#/components/responses/BadRequestResponse" + }, + "401": { + "$ref": "#/components/responses/UnauthorizedResponse" + }, + "403": { + "$ref": "#/components/responses/ForbiddenResponse" + }, + "404": { + "$ref": "#/components/responses/NotFoundResponse" + }, + "429": { + "$ref": "#/components/responses/TooManyRequestsResponse" + }, + "500": { + "$ref": "#/components/responses/InternalServerErrorResponse" + } + }, + "x-codeSamples": [] + }, + "patch": { + "operationId": "updateMemberTenants", + "tags": [ + "Members", + "Tenants" + ], + "summary": "Update a team member's tenant access", + "description": "This endpoint can be used to update existing tenant roles.", + "x-operation-name": "update", + "x-operation-group": [ + "members", + "tenants" + ], + "x-release-lifecycle": "beta", + "security": [ + { + "Bearer": [ + "update:members" + ] + } + ], + "parameters": [ + { + "in": "path", + "name": "id", + "required": true, + "description": "The unique ID of the team member to update", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/UpdateMembersTenantsRequest" + }, + "responses": { + "200": { + "$ref": "#/components/responses/UpdateMembersTenantsResponse" + }, + "204": { + "$ref": "#/components/responses/EmptyResponse" + }, + "400": { + "$ref": "#/components/responses/BadRequestResponse" + }, + "401": { + "$ref": "#/components/responses/UnauthorizedResponse" + }, + "403": { + "$ref": "#/components/responses/ForbiddenResponse" + }, + "404": { + "$ref": "#/components/responses/NotFoundResponse" + }, + "429": { + "$ref": "#/components/responses/TooManyRequestsResponse" + }, + "500": { + "$ref": "#/components/responses/InternalServerErrorResponse" + } + }, + "x-codeSamples": [] + }, + "delete": { + "operationId": "removeMemberTenant", + "tags": [ + "Members", + "Tenants" + ], + "summary": "Remove a team member's tenant access", + "description": "This endpoint can be used to remove tenant access", + "x-operation-name": "remove", + "x-operation-group": [ + "members", + "tenants" + ], + "x-release-lifecycle": "beta", + "security": [ + { + "Bearer": [ + "update:members" + ] + } + ], + "parameters": [ + { + "in": "path", + "name": "id", + "required": true, + "description": "The unique ID of the team member.", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/DeleteMembersTenantsRequest" + }, + "responses": { + "200": { + "$ref": "#/components/responses/DeleteMembersTenantsResponse" + }, + "204": { + "$ref": "#/components/responses/EmptyResponse" + }, + "400": { + "$ref": "#/components/responses/BadRequestResponse" + }, + "401": { + "$ref": "#/components/responses/UnauthorizedResponse" + }, + "403": { + "$ref": "#/components/responses/ForbiddenResponse" + }, + "404": { + "$ref": "#/components/responses/NotFoundResponse" + }, + "429": { + "$ref": "#/components/responses/TooManyRequestsResponse" + }, + "500": { + "$ref": "#/components/responses/InternalServerErrorResponse" + } + }, + "x-codeSamples": [] + } + }, + "/api/members/{id}/tenants/{environment}": { + "get": { + "operationId": "listTenantAccessByEnvironment", + "tags": [ + "Members", + "Tenants" + ], + "summary": "List a member's tenant access within an environment", + "description": "This endpoint retrieves a list of all tenants within a specific environment that the team member has access to. Environment identifiers required for this request can be obtained using the /api/environments endpoint, which provides details for all environments where tenants associated with your team exists.", + "x-operation-name": "list", + "x-operation-group": [ + "members", + "tenants" + ], + "x-release-lifecycle": "beta", + "security": [ + { + "Bearer": [ + "read:members" + ] + } + ], + "parameters": [ + { + "in": "path", + "name": "id", + "required": true, + "description": "Unique ID of the team member.", + "schema": { + "type": "string" + } + }, + { + "in": "path", + "name": "environment", + "required": true, + "description": "The cloud environment identifier (e.g. 'US-3', 'EU-1', 'acme-dev').", + "schema": { + "type": "string", + "minLength": 1 + } + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/ListMembersTenantsResponse" + }, + "400": { + "$ref": "#/components/responses/BadRequestResponse" + }, + "401": { + "$ref": "#/components/responses/UnauthorizedResponse" + }, + "403": { + "$ref": "#/components/responses/ForbiddenResponse" + }, + "404": { + "$ref": "#/components/responses/NotFoundResponse" + }, + "429": { + "$ref": "#/components/responses/TooManyRequestsResponse" + }, + "500": { + "$ref": "#/components/responses/InternalServerErrorResponse" + } + }, + "x-codeSamples": [] + } + }, + "/api/activity/logs": { + "get": { + "operationId": "listActivityLogs", + "tags": [ + "Activity" + ], + "summary": "Retrieve team activity logs", + "description": "This endpoint returns a paginated list of activity log entries for the team.", + "x-operation-name": "list", + "x-operation-group": [ + "activity" + ], + "x-operation-request-parameters-name": "ListActivityRequestParameters", + "x-release-lifecycle": "beta", + "parameters": [ + { + "$ref": "#/components/parameters/Take" + }, + { + "$ref": "#/components/parameters/From" + }, + { + "$ref": "#/components/parameters/Since" + }, + { + "$ref": "#/components/parameters/Until" + }, + { + "in": "query", + "name": "type", + "required": false, + "description": "Exact match: filter by event type", + "schema": { + "$ref": "#/components/schemas/ActivityLogEventTypeEnum" + } + }, + { + "in": "query", + "name": "status", + "required": false, + "description": "Exact match: filter by status", + "schema": { + "$ref": "#/components/schemas/ActivityLogStatusEnum" + } + } + ], + "security": [ + { + "Bearer": [ + "read:team_activity" + ] + } + ], + "responses": { + "200": { + "$ref": "#/components/responses/ListActivityResponse" + }, + "400": { + "$ref": "#/components/responses/BadRequestResponse" + }, + "401": { + "$ref": "#/components/responses/UnauthorizedResponse" + }, + "403": { + "$ref": "#/components/responses/ForbiddenResponse" + }, + "429": { + "$ref": "#/components/responses/TooManyRequestsResponse" + }, + "500": { + "$ref": "#/components/responses/InternalServerErrorResponse" + } + }, + "x-codeSamples": [] + } + } + }, + "components": { + "securitySchemes": { + "Bearer": { + "type": "http", + "scheme": "bearer", + "bearerFormat": "JWT" + } + }, + "schemas": { + "TeamMemberRoleEnum": { + "type": "string", + "description": "The role of the team member", + "enum": [ + "teams_owner", + "teams_contributor", + "teams_report_viewer" + ], + "examples": [ + "teams_owner" + ] + }, + "TeamMember": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The unique ID of the team member." + }, + "name": { + "type": "string", + "description": "The full name of the team member.", + "examples": [ + "John Doe", + "Jane Smith" + ] + }, + "given_name": { + "type": "string", + "description": "The first name of the team member. Returns empty string if not set.", + "examples": [ + "John", + "Jane" + ] + }, + "family_name": { + "type": "string", + "description": "The last name of the team member. Returns empty string if not set.", + "examples": [ + "Doe", + "Smith" + ] + }, + "nickname": { + "type": "string", + "description": "The nickname of the team member. Returns empty string if not set.", + "examples": [ + "johndoe", + "jsmith" + ] + }, + "email": { + "type": "string", + "format": "email", + "description": "The email of the team member.", + "examples": [ + "john.doe@example.com", + "jane.smith@company.com" + ] + }, + "role": { + "$ref": "#/components/schemas/TeamMemberRoleEnum" + } + }, + "required": [ + "id", + "name", + "given_name", + "family_name", + "nickname", + "email", + "role" + ] + }, + "Next": { + "type": "string", + "description": "Opaque cursor for next page; not sent if no more results" + }, + "ListMembersResponseContent": { + "type": "object", + "properties": { + "members": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TeamMember" + } + }, + "next": { + "$ref": "#/components/schemas/Next" + } + }, + "required": [ + "members" + ] + }, + "TenantId": { + "type": "string", + "format": "uuid", + "description": "Unique identifier of the tenant" + }, + "TenantMemberRoleEnum": { + "type": "string", + "description": "Tenant Member Role", + "enum": [ + "owner", + "editor-connections", + "editor-users", + "editor-specific-apps", + "editor-organizations", + "viewer-config", + "viewer-users", + "support-access", + "elevated-support-access", + "editor-kms" + ], + "examples": [ + "owner" + ] + }, + "ClientId": { + "type": "string", + "minLength": 5, + "maxLength": 50, + "pattern": "^([0-9a-zA-Z-_@\\.~]{5,64})$", + "examples": [ + "x3qNvwb7BmNH4NMbLHqaN72OKNjDVGVg" + ] + }, + "InviteMembersRequestContent": { + "type": "object", + "properties": { + "email": { + "type": "string", + "format": "email", + "description": "The email of the team member", + "examples": [ + "jane.smith@company.com" + ] + }, + "role": { + "$ref": "#/components/schemas/TeamMemberRoleEnum" + }, + "tenant_ids": { + "description": "Specifies an optional list of tenant IDs and their corresponding role assignments.", + "type": "array", + "items": { + "$ref": "#/components/schemas/TenantId" + } + }, + "tenant_roles": { + "description": "The list of roles for each tenant.", + "type": "array", + "items": { + "$ref": "#/components/schemas/TenantMemberRoleEnum" + } + }, + "client_ids": { + "description": "The list of apps the user has access to for the 'editor-specific-apps' role. This property is only present for this role.", + "type": "array", + "items": { + "$ref": "#/components/schemas/ClientId" + }, + "examples": [ + [ + "client_123", + "client_456" + ] + ] + } + }, + "required": [ + "email", + "role" + ], + "additionalProperties": false, + "examples": [ + { + "email": "jane.smith@company.com", + "role": "teams_contributor", + "tenant_ids": [ + "538c9e21-e3d5-4ad6-b3d0-352c62369fb0", + "b1c9e21e-1234-4ad6-b3d0-352c6236abcd" + ], + "tenant_roles": [ + "owner", + "editor-users" + ], + "client_ids": [ + "client_123", + "client_456" + ] + } + ] + }, + "InviteMembersResponseContent": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The unique ID of the newly created team member", + "examples": [ + "invite_abc123" + ] + }, + "email": { + "type": "string", + "format": "email", + "description": "The email of the team member", + "examples": [ + "jane.smith@company.com" + ] + }, + "role": { + "$ref": "#/components/schemas/TeamMemberRoleEnum" + }, + "tenant_ids": { + "type": "array", + "description": "The list of tenants granted to the team member", + "items": { + "$ref": "#/components/schemas/TenantId" + } + }, + "tenant_roles": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TenantMemberRoleEnum" + }, + "description": "The list the roles granted to the team member for each tenant" + }, + "client_ids": { + "type": "array", + "description": "The list of apps the user has access to under the editor-specific-apps role.", + "items": { + "$ref": "#/components/schemas/ClientId" + }, + "examples": [ + [ + "client_123", + "client_456" + ] + ] + } + }, + "required": [ + "id", + "email", + "role" + ], + "examples": [ + { + "id": "invite_abc123", + "email": "jane.smith@company.com", + "role": "teams_contributor", + "tenant_ids": [ + "538c9e21-e3d5-4ad6-b3d0-352c62369fb0", + "b1c9e21e-1234-4ad6-b3d0-352c6236abcd" + ], + "tenant_roles": [ + "owner", + "editor-users" + ], + "client_ids": [ + "client_123", + "client_456" + ] + } + ] + }, + "EnvironmentTypeEnum": { + "type": "string", + "description": "Specifies the Environment tag for the tenant created in the Auth0 Public Cloud. It is used to distinguish between development, staging and production environments.
Development and Staging environments are intended for testing and pre-production use, while production is designated for live applications and subject to higher rate limits. Selecting the correct environment type ensures appropriate resource allocation and rate limits", + "enum": [ + "development", + "production", + "staging" + ], + "examples": [ + "development" + ] + }, + "TenantName": { + "type": "string", + "pattern": "^[a-z0-9][-a-z0-9]{1,62}[a-z0-9]$", + "minLength": 3, + "maxLength": 63, + "examples": [ + "acme-development-tenant" + ], + "description": "The tenant name uniquely identifies a tenant programmatically and within various dashboards, such as Auth0 Dashboard. It can only contain alphanumeric characters, lowercase letters and \"-\". However, it can't start nor end with \"-\". If not specified, a tenant name will be auto-generated." + }, + "Environment": { + "type": "string", + "description": "The name of the cloud environment where the tenant was created", + "examples": [ + "US-3", + "EU-1", + "acme-dev" + ] + }, + "TenantFqdn": { + "type": "string", + "description": "The fully qualified domain name of the tenant, which uniquely identifies its domain within the system. The domain is used to define the audience when interacting with the Management API, enabling programmatic management of the tenant’s configuration and resources.", + "examples": [ + "acme-development-tenant.us.auth0.com", + "acme-development-tenant.acme-dev.auth0app.com" + ] + }, + "Region": { + "type": "string", + "description": "Locality in which the tenant was created", + "examples": [ + "us", + "eu", + "virginia", + "frankfurt" + ] + }, + "CreatedAt": { + "type": "string", + "description": "The date and time when the tenant was created, formatted in ISO 8601 standard. This timestamp ensures consistency across time zones and systems", + "format": "date-time" + }, + "TenantItem": { + "type": "object", + "description": "A tenant associated with your team", + "properties": { + "tenant_id": { + "$ref": "#/components/schemas/TenantId" + }, + "tenant_name": { + "$ref": "#/components/schemas/TenantName" + }, + "environment": { + "$ref": "#/components/schemas/Environment" + }, + "environment_tag": { + "$ref": "#/components/schemas/EnvironmentTypeEnum" + }, + "domain": { + "$ref": "#/components/schemas/TenantFqdn" + }, + "locality": { + "$ref": "#/components/schemas/Region" + }, + "created_at": { + "$ref": "#/components/schemas/CreatedAt" + } + }, + "required": [ + "tenant_id", + "tenant_name", + "environment", + "domain", + "locality", + "created_at" + ] + }, + "ListTenantsResponseContent": { + "type": "object", + "properties": { + "tenants": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TenantItem" + } + }, + "next": { + "$ref": "#/components/schemas/Next" + } + }, + "required": [ + "tenants" + ] + }, + "AdminEmail": { + "type": "string", + "format": "email", + "description": "The email of the person that will be added as an admin of the tenant. The person must be a member of the team." + }, + "PublicCloudRegion": { + "type": "string", + "description": "Specifies the Auth0 Public Cloud locality where the tenant will be created.
Available localities include United States (us), Europe (eu), Australia (au), Japan (jp), Canada (ca) and United Kingdom (uk).", + "minLength": 2, + "maxLength": 5, + "examples": [ + "us", + "eu", + "au", + "jp", + "ca", + "uk" + ] + }, + "PublicCloudPayload": { + "title": "Public Cloud", + "type": "object", + "properties": { + "tenant_name": { + "$ref": "#/components/schemas/TenantName" + }, + "admin_email": { + "$ref": "#/components/schemas/AdminEmail" + }, + "locality": { + "$ref": "#/components/schemas/PublicCloudRegion" + }, + "environment_tag": { + "$ref": "#/components/schemas/EnvironmentTypeEnum", + "default": "development" + } + }, + "required": [ + "admin_email", + "locality" + ], + "additionalProperties": false + }, + "PrivateCloudEnvironment": { + "type": "string", + "minLength": 1, + "maxLength": 32, + "pattern": "^[a-z]([-]?[a-z0-9])*$", + "examples": [ + "acme-dev" + ], + "description": "Specifies the name of the Auth0 Private Cloud environment where the tenant will be created." + }, + "PrivateCloudPayload": { + "title": "Private Cloud", + "type": "object", + "properties": { + "tenant_name": { + "$ref": "#/components/schemas/TenantName" + }, + "admin_email": { + "$ref": "#/components/schemas/AdminEmail" + }, + "environment": { + "$ref": "#/components/schemas/PrivateCloudEnvironment" + } + }, + "required": [ + "admin_email", + "environment" + ], + "additionalProperties": false + }, + "CreateTenantsRequestContent": { + "oneOf": [ + { + "$ref": "#/components/schemas/PublicCloudPayload" + }, + { + "$ref": "#/components/schemas/PrivateCloudPayload" + } + ] + }, + "ManagementClient": { + "type": "object", + "description": "The Auth0 Management Client credentials required to authenticate and interact with the newly created tenant. These credentials allow authorized access to manage the tenant's configuration, resources, and API interactions.", + "properties": { + "client_name": { + "type": "string", + "description": "The name of the Machine to Machine client, which is used for secure, automated interactions with the tenant's APIs and services." + }, + "client_id": { + "type": "string", + "description": "The id of the Machine to Machine client, which is used for secure, automated interactions with the tenant's APIs and services." + }, + "client_secret": { + "type": "string", + "description": "The client secret the Machine to Machine client, which is used for secure, automated interactions with the tenant's APIs and services." + } + }, + "required": [ + "client_name", + "client_id", + "client_secret" + ] + }, + "PublicCloudResponseContent": { + "title": "Public Cloud", + "type": "object", + "properties": { + "tenant_id": { + "type": "string", + "format": "uuid", + "examples": [ + "538c9e21-e3d5-4ad6-b3d0-352c62369fb0" + ], + "description": "The unique identifier of the created tenant (UUID). This identifier is required for performing operations such as deleting the tenant. UUIDs ensure global uniqueness and are essential for managing tenant resources programmatically" + }, + "tenant_name": { + "$ref": "#/components/schemas/TenantName" + }, + "domain": { + "$ref": "#/components/schemas/TenantFqdn" + }, + "environment_tag": { + "$ref": "#/components/schemas/EnvironmentTypeEnum" + }, + "locality": { + "$ref": "#/components/schemas/Region" + }, + "environment": { + "$ref": "#/components/schemas/Environment" + }, + "created_at": { + "$ref": "#/components/schemas/CreatedAt" + }, + "management_client": { + "$ref": "#/components/schemas/ManagementClient" + } + }, + "required": [ + "tenant_id", + "tenant_name", + "domain", + "locality", + "environment", + "created_at", + "management_client" + ] + }, + "PrivateCloudResponseContent": { + "title": "Private Cloud", + "type": "object", + "properties": { + "tenant_id": { + "type": "string", + "format": "uuid", + "examples": [ + "538c9e21-e3d5-4ad6-b3d0-352c62369fb0" + ], + "description": "The unique identifier of the created tenant (UUID). This identifier is required for performing operations such as deleting the tenant. UUIDs ensure global uniqueness and are essential for managing tenant resources programmatically" + }, + "tenant_name": { + "$ref": "#/components/schemas/TenantName" + }, + "domain": { + "$ref": "#/components/schemas/TenantFqdn" + }, + "environment": { + "$ref": "#/components/schemas/Environment" + }, + "created_at": { + "$ref": "#/components/schemas/CreatedAt" + }, + "management_client": { + "$ref": "#/components/schemas/ManagementClient" + } + }, + "required": [ + "tenant_id", + "tenant_name", + "domain", + "environment", + "created_at", + "management_client" + ], + "additionalProperties": false + }, + "CreateTenantsResponseContent": { + "oneOf": [ + { + "$ref": "#/components/schemas/PublicCloudResponseContent" + }, + { + "$ref": "#/components/schemas/PrivateCloudResponseContent" + } + ] + }, + "ListEnvironmentsResponseContent": { + "type": "object", + "properties": { + "environments": { + "type": "array", + "description": "List of environments associated with the Team where tenants exist.", + "items": { + "$ref": "#/components/schemas/Environment" + } + } + }, + "required": [ + "environments" + ] + }, + "GetTenantsResponseContent": { + "type": "object", + "properties": { + "tenant_id": { + "$ref": "#/components/schemas/TenantId" + }, + "tenant_name": { + "$ref": "#/components/schemas/TenantName" + }, + "domain": { + "$ref": "#/components/schemas/TenantFqdn" + }, + "environment": { + "$ref": "#/components/schemas/Environment" + }, + "locality": { + "$ref": "#/components/schemas/Region" + }, + "environment_tag": { + "$ref": "#/components/schemas/EnvironmentTypeEnum" + }, + "created_at": { + "$ref": "#/components/schemas/CreatedAt" + } + }, + "required": [ + "tenant_id", + "tenant_name", + "domain", + "environment", + "locality", + "created_at" + ] + }, + "TenantMember": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique ID of the tenant member", + "examples": [ + "auth0|68da0038bab277c02ed1d4c8", + "google-oauth2|123456789012345678901" + ] + }, + "name": { + "type": "string", + "description": "Full name of the member.", + "examples": [ + "John Doe", + "Jane Smith" + ] + }, + "email": { + "type": "string", + "format": "email", + "description": "Email of the member.", + "examples": [ + "john.doe@example.com", + "jane.smith@example.com" + ] + }, + "roles": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TenantMemberRoleEnum" + }, + "description": "An array of roles assigned to the member.", + "examples": [ + [ + "owner" + ], + [ + "editor-users", + "editor-connections" + ], + [ + "viewer-users" + ] + ] + }, + "given_name": { + "type": "string", + "description": "First name of the member. Returns empty string if not set.", + "examples": [ + "John", + "Jane" + ] + }, + "family_name": { + "type": "string", + "description": "Last name of the member. Returns empty string if not set.", + "examples": [ + "Doe", + "Smith" + ] + }, + "nickname": { + "type": "string", + "description": "Nickname of the member. Returns empty string if not set.", + "examples": [ + "johndoe", + "jsmith" + ] + } + }, + "required": [ + "id", + "email", + "roles", + "given_name", + "family_name", + "nickname", + "name" + ] + }, + "ListTenantsMembersResponseContent": { + "type": "object", + "properties": { + "members": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TenantMember" + } + }, + "next": { + "$ref": "#/components/schemas/Next" + } + }, + "required": [ + "members" + ] + }, + "GetMembersResponseContent": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique ID of the team member", + "examples": [ + "auth0|68da0038bab277c02ed1d4c8", + "google-oauth2|123456789012345678901" + ] + }, + "name": { + "type": "string", + "description": "Full name of the team member." + }, + "given_name": { + "type": "string", + "description": "First name of the team member. Returns empty string if not set." + }, + "family_name": { + "type": "string", + "description": "Last name of the team member. Returns empty string if not set." + }, + "nickname": { + "type": "string", + "description": "Nickname of the team member. Returns empty string if not set." + }, + "email": { + "type": "string", + "format": "email", + "description": "Email of the team member." + }, + "role": { + "$ref": "#/components/schemas/TeamMemberRoleEnum", + "description": "The team-level role." + } + }, + "required": [ + "id", + "name", + "given_name", + "family_name", + "nickname", + "email", + "role" + ] + }, + "UpdateMembersRequestContent": { + "type": "object", + "properties": { + "role": { + "description": "The new role to assign to the team member.", + "$ref": "#/components/schemas/TeamMemberRoleEnum" + } + }, + "required": [ + "role" + ], + "additionalProperties": false + }, + "UpdateMembersResponseContent": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique ID of the team member.", + "examples": [ + "auth0|68da0038bab277c02ed1d4c8", + "google-oauth2|123456789012345678901" + ] + }, + "email": { + "type": "string", + "format": "email", + "description": "Email of the team member", + "examples": [ + "john.doe@example.com", + "jane.smith@company.org" + ] + }, + "role": { + "$ref": "#/components/schemas/TeamMemberRoleEnum", + "description": "The team-level role of the team member." + }, + "name": { + "type": "string", + "description": "Full name of the team member", + "examples": [ + "John Doe", + "Jane Smith" + ] + }, + "given_name": { + "type": "string", + "description": "First name of the team member. Returns empty string if not set.", + "examples": [ + "John", + "Jane" + ] + }, + "family_name": { + "type": "string", + "description": "Last name of the team member. Returns empty string if not set", + "examples": [ + "Doe", + "Smith" + ] + }, + "nickname": { + "type": "string", + "description": "Nickname of the team member. Returns empty string if not set.", + "examples": [ + "johndoe", + "jsmith" + ] + } + }, + "required": [ + "id", + "email", + "role", + "name", + "given_name", + "family_name", + "nickname" + ] + }, + "CreateMembersTenantsRequestContent": { + "type": "object", + "properties": { + "tenants": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TenantId" + }, + "minItems": 1, + "maxItems": 10, + "description": "A list of tenant ids" + }, + "roles": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TenantMemberRoleEnum" + }, + "minItems": 1, + "description": "List of roles to be assigned to the tenant member" + }, + "client_ids": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ClientId" + }, + "description": "List of applications. Only if nested role is editor-specific-app" + } + }, + "required": [ + "tenants", + "roles" + ], + "additionalProperties": false, + "examples": [ + { + "tenants": [ + "538c9e21-e3d5-4ad6-b3d0-352c62369fb0", + "b1c9e21e-1234-4ad6-b3d0-352c6236abcd" + ], + "roles": [ + "owner", + "editor-specific-apps" + ], + "client_ids": [ + "client_123", + "client_456" + ] + } + ] + }, + "MembersTenantsBulkSummary": { + "type": "object", + "description": "Summary of the bulk tenant operation", + "properties": { + "total_count": { + "type": "integer", + "description": "Total number of tenants submitted" + }, + "success_count": { + "type": "integer", + "description": "Number of tenants successfully processed" + }, + "failure_count": { + "type": "integer", + "description": "Number of tenants that could not be processed" + } + }, + "required": [ + "total_count", + "success_count", + "failure_count" + ] + }, + "MembersTenantsSuccessItem": { + "type": "object", + "properties": { + "tenant_id": { + "$ref": "#/components/schemas/TenantId" + }, + "roles": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TenantMemberRoleEnum" + }, + "description": "List of roles assigned to the tenant member" + }, + "client_ids": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ClientId" + }, + "description": "Only if nested role is editor-specific-app" + } + }, + "required": [ + "tenant_id", + "roles" + ] + }, + "MembersTenantsFailureItem": { + "type": "object", + "properties": { + "tenant_id": { + "$ref": "#/components/schemas/TenantId" + }, + "status": { + "type": "integer", + "description": "Status code of failure" + }, + "title": { + "type": "string", + "description": "A short human-readable summary of the error" + }, + "type": { + "type": "string", + "description": "A specific error code (e.g., VALIDATION_ERROR, UNAUTHORIZED, TENANT_LIMIT_REACHED)" + } + }, + "required": [ + "tenant_id", + "status", + "title", + "type" + ] + }, + "CreateMembersTenantsResponseContent": { + "type": "object", + "properties": { + "status_code": { + "type": "integer", + "description": "Status code for partial response" + }, + "message": { + "type": "string", + "description": "Describing the partial error scenario" + }, + "summary": { + "$ref": "#/components/schemas/MembersTenantsBulkSummary" + }, + "success": { + "type": "array", + "description": "List of successful instances", + "items": { + "$ref": "#/components/schemas/MembersTenantsSuccessItem" + } + }, + "failure": { + "type": "array", + "description": "List of failed instances", + "items": { + "$ref": "#/components/schemas/MembersTenantsFailureItem" + } + } + }, + "required": [ + "status_code", + "message", + "summary", + "success", + "failure" + ], + "examples": [ + { + "status_code": 200, + "message": "Operation completed with errors", + "summary": { + "total_count": 2, + "success_count": 1, + "failure_count": 1 + }, + "success": [ + { + "tenant_id": "538c9e21-e3d5-4ad6-b3d0-352c62369fb0", + "roles": [ + "owner", + "editor-specific-apps" + ], + "client_ids": [ + "client_123" + ] + } + ], + "failure": [ + { + "tenant_id": "b1c9e21e-1234-4ad6-b3d0-352c6236abcd", + "status": 409, + "title": "This tenant is already added", + "type": "TENANT_ALREADY_EXISTS" + } + ] + } + ] + }, + "DeleteMembersTenantsRequestContent": { + "type": "object", + "properties": { + "tenants": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TenantId" + }, + "minItems": 1, + "maxItems": 10, + "description": "Specifies list of tenant IDs to be removed" + } + }, + "required": [ + "tenants" + ], + "additionalProperties": false + }, + "DeleteMembersTenantsSuccessItem": { + "type": "object", + "properties": { + "tenant_ids": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TenantId" + }, + "description": "IDs of successfully deleted tenants" + } + }, + "required": [ + "tenant_ids" + ] + }, + "DeleteMembersTenantsResponseContent": { + "type": "object", + "properties": { + "status_code": { + "type": "integer", + "description": "Status code for partial response" + }, + "message": { + "type": "string", + "description": "Describing the partial error scenario" + }, + "summary": { + "$ref": "#/components/schemas/MembersTenantsBulkSummary" + }, + "success": { + "type": "array", + "description": "List of all tenant ids that were removed", + "items": { + "$ref": "#/components/schemas/DeleteMembersTenantsSuccessItem" + } + }, + "failure": { + "type": "array", + "description": "List of failed instances", + "items": { + "$ref": "#/components/schemas/MembersTenantsFailureItem" + } + } + }, + "required": [ + "status_code", + "message", + "summary", + "success", + "failure" + ] + }, + "UpdateMembersTenantsRequestContent": { + "type": "object", + "properties": { + "tenants": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TenantId" + }, + "minItems": 1, + "maxItems": 10, + "description": "A list of tenant ids" + }, + "roles": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TenantMemberRoleEnum" + }, + "description": "List of roles to be assigned to the tenant member" + }, + "client_ids": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ClientId" + }, + "description": "List of applications. Only if nested role is editor-specific-app" + } + }, + "required": [ + "tenants", + "roles" + ], + "additionalProperties": false, + "if": { + "properties": { + "client_ids": { + "minItems": 1 + } + }, + "required": [ + "client_ids" + ] + }, + "then": { + "properties": { + "tenants": { + "maxItems": 1 + } + } + }, + "examples": [ + { + "tenants": [ + "538c9e21-e3d5-4ad6-b3d0-352c62369fb0" + ], + "roles": [ + "owner", + "editor-specific-apps" + ], + "client_ids": [ + "client_123", + "client_456" + ] + } + ] + }, + "UpdateMembersTenantsResponseContent": { + "type": "object", + "properties": { + "status_code": { + "type": "integer", + "description": "Status code for partial response" + }, + "message": { + "type": "string", + "description": "Describing the partial error scenario" + }, + "summary": { + "$ref": "#/components/schemas/MembersTenantsBulkSummary" + }, + "success": { + "type": "array", + "description": "List of successful instances", + "items": { + "$ref": "#/components/schemas/MembersTenantsSuccessItem" + } + }, + "failure": { + "type": "array", + "description": "List of failed instances", + "items": { + "$ref": "#/components/schemas/MembersTenantsFailureItem" + } + } + }, + "required": [ + "status_code", + "message", + "summary", + "success", + "failure" + ], + "examples": [ + { + "status_code": 200, + "message": "Partial success: some tenants could not be updated", + "summary": { + "total_count": 2, + "success_count": 1, + "failure_count": 1 + }, + "success": [ + { + "tenant_id": "538c9e21-e3d5-4ad6-b3d0-352c62369fb0", + "roles": [ + "owner", + "editor-specific-apps" + ], + "client_ids": [ + "client_123" + ] + } + ], + "failure": [ + { + "tenant_id": "b1c9e21e-1234-4ad6-b3d0-352c6236abcd", + "status": 404, + "title": "Tenant not found", + "type": "NOT_FOUND" + } + ] + } + ] + }, + "TenantRoleAssignment": { + "type": "object", + "properties": { + "role": { + "$ref": "#/components/schemas/TenantMemberRoleEnum", + "description": "The role assigned to the member." + }, + "client_ids": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ClientId" + }, + "description": "The list of apps the user has access to for the 'editor-specific-apps' role. This property is only present for this role.", + "examples": [ + [ + "App-A", + "App-B" + ] + ] + } + }, + "required": [ + "role" + ], + "additionalProperties": false, + "allOf": [ + { + "if": { + "properties": { + "role": { + "const": "editor-specific-apps" + } + } + }, + "then": { + "required": [ + "client_ids" + ] + } + } + ] + }, + "MemberTenantItem": { + "type": "object", + "properties": { + "tenant_id": { + "$ref": "#/components/schemas/TenantId" + }, + "domain": { + "$ref": "#/components/schemas/TenantFqdn" + }, + "roles": { + "type": "array", + "description": "An array of roles assigned to the team member within the tenant.", + "items": { + "$ref": "#/components/schemas/TenantRoleAssignment" + } + } + }, + "required": [ + "tenant_id", + "domain", + "roles" + ] + }, + "ListMembersTenantsResponseContent": { + "type": "object", + "properties": { + "environment": { + "type": "string", + "description": "The queried environment.", + "examples": [ + "US-3", + "EU-1", + "acme-dev" + ] + }, + "tenants": { + "type": "array", + "description": "Member tenant access list", + "items": { + "$ref": "#/components/schemas/MemberTenantItem" + } + } + }, + "required": [ + "environment", + "tenants" + ] + }, + "DateTimeIso": { + "type": "string", + "format": "date-time", + "errorMessage": "must be in ISO 8601 date format" + }, + "ActivityLogEventTypeEnum": { + "type": "string", + "enum": [ + "Team Member", + "Team Invitation", + "Security Policy", + "Team Settings", + "Token Activity", + "Tenant Activity", + "Tenant Member", + "Team Activity" + ], + "description": "Event type identifier" + }, + "ActivityLogStatusEnum": { + "type": "string", + "enum": [ + "Success", + "Failure" + ], + "description": "Execution status of the event" + }, + "ActivityLogDetails": { + "type": "object", + "description": "Structured event-specific data. This will vary event to event" + }, + "ActivityLogActorTypeEnum": { + "type": "string", + "enum": [ + "user", + "machine" + ], + "description": "Type of actor" + }, + "ActivityLogActor": { + "type": "object", + "description": "Actor object; structure may vary as per event type and actor details", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier of the actor" + }, + "type": { + "$ref": "#/components/schemas/ActivityLogActorTypeEnum" + }, + "name": { + "type": "string", + "description": "Name of the actor" + }, + "picture": { + "type": "string", + "description": "Profile picture URL (for user actors)" + }, + "isMember": { + "type": "boolean", + "description": "Whether the actor is a team member" + }, + "teamRole": { + "type": "string", + "description": "Team role of the actor" + } + }, + "required": [ + "id", + "type", + "name" + ] + }, + "ActivityLogEntry": { + "type": "object", + "properties": { + "id": { + "type": "string", + "format": "uuid", + "description": "Unique identifier of the log entry" + }, + "type": { + "$ref": "#/components/schemas/ActivityLogEventTypeEnum" + }, + "status": { + "$ref": "#/components/schemas/ActivityLogStatusEnum" + }, + "details": { + "$ref": "#/components/schemas/ActivityLogDetails" + }, + "ip": { + "type": "string", + "description": "Source IP address" + }, + "hostname": { + "type": "string", + "description": "Origin hostname (if available)" + }, + "user_agent": { + "type": "string", + "description": "User agent string (if applicable)" + }, + "version": { + "type": "string", + "description": "Event schema or system version" + }, + "created_at": { + "type": "string", + "format": "date-time", + "description": "Timestamp when the event was created" + }, + "current_event": { + "type": "string", + "description": "Current event identifier" + }, + "actor": { + "$ref": "#/components/schemas/ActivityLogActor" + } + }, + "required": [ + "id", + "current_event", + "status", + "created_at", + "actor" + ] + }, + "ListActivityResponseContent": { + "type": "object", + "properties": { + "logs": { + "type": "array", + "description": "List of activity log entries", + "items": { + "$ref": "#/components/schemas/ActivityLogEntry" + } + }, + "next": { + "$ref": "#/components/schemas/Next" + } + }, + "required": [ + "logs" + ] + } + }, + "parameters": { + "Take": { + "in": "query", + "name": "take", + "required": false, + "description": "Maximum number of items to return per page. Defaults to 50. Maximum 50", + "schema": { + "type": "integer", + "minimum": 1, + "maximum": 50, + "default": 50 + } + }, + "From": { + "in": "query", + "name": "from", + "required": false, + "description": "Checkpoint cursor for pagination; use the 'next' value from a previous response to fetch the next page", + "schema": { + "type": "string" + } + }, + "Sort": { + "name": "sort", + "in": "query", + "required": false, + "description": "Sort order for results using MongoDB-style syntax. Defaults to 'created_at:-1' (newest first, descending). Use 'created_at:1' for oldest first (ascending). Format: field:direction where direction is 1 (ascending) or -1 (descending).", + "schema": { + "type": "string", + "pattern": "^created_at:(1|-1)$", + "default": "created_at:-1" + } + }, + "Since": { + "in": "query", + "name": "since", + "required": false, + "description": "Return logs created at or after this ISO 8601 date format", + "schema": { + "$ref": "#/components/schemas/DateTimeIso" + } + }, + "Until": { + "in": "query", + "name": "until", + "required": false, + "description": "Return logs created before this ISO 8601 timestamp", + "schema": { + "$ref": "#/components/schemas/DateTimeIso" + } + } + }, + "responses": { + "ListMembersResponse": { + "description": "A paginated list of team members", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ListMembersResponseContent" + } + } + } + }, + "BadRequestResponse": { + "description": "Invalid input based on schema.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "status": { + "const": 400 + }, + "type": { + "type": "string" + }, + "title": { + "type": "string" + }, + "details": { + "type": "string" + } + }, + "required": [ + "status", + "type", + "title" + ], + "examples": [ + { + "status": 400, + "type": "VALIDATION_ERROR", + "title": "Invalid payload" + } + ] + } + } + } + }, + "UnauthorizedResponse": { + "description": "Token has expired or signature is invalid.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "status": { + "const": 401 + }, + "type": { + "type": "string" + }, + "title": { + "type": "string" + }, + "details": { + "type": "string" + } + }, + "required": [ + "status", + "type", + "title" + ], + "examples": [ + { + "status": 401, + "type": "UNAUTHORIZED", + "title": "Unauthorized" + } + ] + } + } + } + }, + "ForbiddenResponse": { + "description": "Forbidden. The message will vary depending on the cause.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "status": { + "const": 403 + }, + "type": { + "type": "string" + }, + "title": { + "type": "string" + }, + "details": { + "type": "string" + } + }, + "required": [ + "status", + "type", + "title" + ], + "examples": [ + { + "status": 403, + "type": "TENANT_LIMIT_REACHED", + "title": "You have reached the limit for tenants in your current plan" + } + ] + } + } + } + }, + "NotFoundResponse": { + "description": "Not Found. The message will vary depending on the cause.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "status": { + "const": 404 + }, + "type": { + "type": "string" + }, + "title": { + "type": "string" + }, + "details": { + "type": "string" + } + }, + "required": [ + "status", + "type", + "title" + ], + "examples": [ + { + "status": 404, + "type": "TENANT_NOT_FOUND", + "title": "The tenant was not found" + } + ] + } + } + } + }, + "TooManyRequestsResponse": { + "description": "Too Many Requests. The message will vary depending on the cause.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "status": { + "const": 429 + }, + "type": { + "type": "string" + }, + "title": { + "type": "string" + }, + "details": { + "type": "string" + } + }, + "required": [ + "status", + "type", + "title" + ], + "examples": [ + { + "status": 429, + "type": "TOO_MANY_REQUESTS", + "title": "Too many requests" + } + ] + } + } + } + }, + "InternalServerErrorResponse": { + "description": "Internal Server Error. The server encountered an unexpected condition and could not fulfill the request.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "status": { + "const": 500 + }, + "type": { + "type": "string" + }, + "title": { + "type": "string" + }, + "details": { + "type": "string" + } + }, + "required": [ + "status", + "type", + "title" + ], + "examples": [ + { + "status": 500, + "type": "UNKNOWN_ERROR", + "title": "An unknown error occurred" + } + ] + } + } + } + }, + "InviteMembersResponse": { + "description": "Team member invited", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InviteMembersResponseContent" + } + } + } + }, + "ListTenantsResponse": { + "description": "A paginated list of tenants, including tenant details such as ID, name, domain, locality, environment, and creation date. The response also includes a 'next' field for checkpoint-based pagination", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ListTenantsResponseContent" + } + } + } + }, + "CreateTenantsResponse": { + "description": "Tenant Created", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateTenantsResponseContent" + } + } + } + }, + "ConflictResponse": { + "description": "Conflict. The message will vary depending on the cause.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "status": { + "const": 409 + }, + "type": { + "type": "string" + }, + "title": { + "type": "string" + }, + "details": { + "type": "string" + } + }, + "required": [ + "status", + "type", + "title" + ], + "examples": [ + { + "status": 409, + "type": "TENANT_ALREADY_EXISTS", + "title": "A tenant with the same name already exists" + } + ] + } + } + } + }, + "ListEnvironmentsResponse": { + "description": "Environment list retrieved successfully", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ListEnvironmentsResponseContent" + } + } + } + }, + "GetTenantsResponse": { + "description": "Tenant details retrieved successfully, including tenant ID, name, domain, environment, locality, environment type, and creation date.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GetTenantsResponseContent" + } + } + } + }, + "EmptyResponse": { + "description": "No Content" + }, + "ListTenantsMembersResponse": { + "description": "A paginated list of tenant members", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ListTenantsMembersResponseContent" + } + } + } + }, + "GetMembersResponse": { + "description": "Team member details retrieved successfully", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GetMembersResponseContent" + } + } + } + }, + "UpdateMembersResponse": { + "description": "Team member updated successfully", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateMembersResponseContent" + } + } + } + }, + "CreateMembersTenantsResponse": { + "description": "Operation completed with errors", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateMembersTenantsResponseContent" + } + } + } + }, + "DeleteMembersTenantsResponse": { + "description": "Operation completed with errors", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DeleteMembersTenantsResponseContent" + } + } + } + }, + "UpdateMembersTenantsResponse": { + "description": "Operation completed with errors", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateMembersTenantsResponseContent" + } + } + } + }, + "ListMembersTenantsResponse": { + "description": "Member tenant access list", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ListMembersTenantsResponseContent" + } + } + } + }, + "ListActivityResponse": { + "description": "A paginated list of audit activity", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ListActivityResponseContent" + } + } + } + } + }, + "requestBodies": { + "InviteMembersRequest": { + "description": "Invite a new team member", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InviteMembersRequestContent" + } + } + } + }, + "CreateTenantsRequest": { + "description": "Create a tenant under the current team", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateTenantsRequestContent" + } + } + } + }, + "UpdateMembersRequest": { + "description": "Update a team member's role", + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateMembersRequestContent" + } + } + } + }, + "CreateMembersTenantsRequest": { + "required": true, + "description": "The tenants and roles to add to the team member.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateMembersTenantsRequestContent" + } + } + } + }, + "DeleteMembersTenantsRequest": { + "required": true, + "description": "The tenants to remove for the team member.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DeleteMembersTenantsRequestContent" + } + } + } + }, + "UpdateMembersTenantsRequest": { + "required": true, + "description": "The tenants and roles to update for the team member.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateMembersTenantsRequestContent" + } + } + } + } + } + } +}