mirror of
https://github.com/supabase/supabase.git
synced 2026-10-05 17:35:10 +03:00
feat: update mgmt api docs (#46955)
This PR updates mgmt api docs automatically. Co-authored-by: jbergstroem <176984+jbergstroem@users.noreply.github.com>
This commit is contained in:
1 parent
0717e1a8cb
commit
7d4ec098ea
5 files changed
+1344
-24
No files matched your search
@@ -700,6 +700,7 @@
|
||||
},
|
||||
"/v1/oauth/token": {
|
||||
"post": {
|
||||
"description": "Supports `authorization_code`, `refresh_token`, and `urn:ietf:params:oauth:grant-type:jwt-bearer` grant types. The `jwt-bearer` grant type (IDJAG — identity-directed JWT assertion) is in beta and available on Team and Enterprise plans only.",
|
||||
"operationId": "v1-exchange-oauth-token",
|
||||
"parameters": [],
|
||||
"requestBody": {
|
||||
@@ -3222,7 +3223,7 @@
|
||||
}
|
||||
},
|
||||
"responses": {
|
||||
"201": { "description": "" },
|
||||
"204": { "description": "" },
|
||||
"401": { "description": "Unauthorized" },
|
||||
"402": {
|
||||
"description": "This feature requires the Pro, Team, or Enterprise organization plan."
|
||||
@@ -3266,7 +3267,7 @@
|
||||
}
|
||||
},
|
||||
"responses": {
|
||||
"201": { "description": "" },
|
||||
"204": { "description": "" },
|
||||
"401": { "description": "Unauthorized" },
|
||||
"403": { "description": "Forbidden action" },
|
||||
"429": { "description": "Rate limit exceeded" },
|
||||
@@ -3956,6 +3957,38 @@
|
||||
"x-oauth-scope": "projects:write"
|
||||
}
|
||||
},
|
||||
"/v1/projects/{ref}/restart": {
|
||||
"post": {
|
||||
"operationId": "v1-restart-a-project",
|
||||
"parameters": [
|
||||
{
|
||||
"name": "ref",
|
||||
"required": true,
|
||||
"in": "path",
|
||||
"description": "Project ref",
|
||||
"schema": {
|
||||
"minLength": 20,
|
||||
"maxLength": 20,
|
||||
"pattern": "^[a-z]+$",
|
||||
"example": "abcdefghijklmnopqrst",
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
],
|
||||
"responses": {
|
||||
"200": { "description": "" },
|
||||
"401": { "description": "Unauthorized" },
|
||||
"403": { "description": "Forbidden action" },
|
||||
"429": { "description": "Rate limit exceeded" }
|
||||
},
|
||||
"security": [{ "bearer": [] }, { "fga_permissions": ["project_admin_write"] }],
|
||||
"summary": "Restarts the given project",
|
||||
"tags": ["Projects"],
|
||||
"x-badges": [{ "name": "OAuth scope: projects:write", "position": "after" }],
|
||||
"x-endpoint-owners": ["infra", "management-api"],
|
||||
"x-oauth-scope": "projects:write"
|
||||
}
|
||||
},
|
||||
"/v1/projects/{ref}/restore": {
|
||||
"get": {
|
||||
"operationId": "v1-list-available-restore-versions",
|
||||
@@ -7965,13 +7998,24 @@
|
||||
"OAuthTokenBody": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"grant_type": { "type": "string", "enum": ["authorization_code", "refresh_token"] },
|
||||
"grant_type": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"authorization_code",
|
||||
"refresh_token",
|
||||
"urn:ietf:params:oauth:grant-type:jwt-bearer"
|
||||
]
|
||||
},
|
||||
"client_id": { "type": "string", "format": "uuid" },
|
||||
"client_secret": { "type": "string" },
|
||||
"code": { "type": "string" },
|
||||
"code_verifier": { "type": "string" },
|
||||
"redirect_uri": { "type": "string" },
|
||||
"refresh_token": { "type": "string" },
|
||||
"assertion": {
|
||||
"type": "string",
|
||||
"description": "IDJAG assertion JWT for grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer. Beta - available on Team and Enterprise plans only."
|
||||
},
|
||||
"resource": {
|
||||
"type": "string",
|
||||
"format": "uri",
|
||||
@@ -7994,11 +8038,14 @@
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"access_token": { "type": "string" },
|
||||
"refresh_token": { "type": "string" },
|
||||
"refresh_token": {
|
||||
"type": "string",
|
||||
"description": "The `urn:ietf:params:oauth:grant-type:jwt-bearer` grant type issues access tokens only, no refresh token is returned and the token cannot be revoked via `/v1/oauth/revoke`."
|
||||
},
|
||||
"expires_in": { "type": "integer" },
|
||||
"token_type": { "type": "string", "enum": ["Bearer"] }
|
||||
},
|
||||
"required": ["access_token", "refresh_token", "expires_in", "token_type"],
|
||||
"required": ["access_token", "expires_in", "token_type"],
|
||||
"additionalProperties": false
|
||||
},
|
||||
"OAuthRevokeTokenBody": {
|
||||
@@ -10309,7 +10356,8 @@
|
||||
"ipv4",
|
||||
"auth_mfa_phone",
|
||||
"auth_mfa_web_authn",
|
||||
"log_drain"
|
||||
"log_drain",
|
||||
"etl_pipeline"
|
||||
]
|
||||
},
|
||||
"variant": {
|
||||
@@ -10345,7 +10393,8 @@
|
||||
{ "type": "string", "enum": ["ipv4_default"] },
|
||||
{ "type": "string", "enum": ["auth_mfa_phone_default"] },
|
||||
{ "type": "string", "enum": ["auth_mfa_web_authn_default"] },
|
||||
{ "type": "string", "enum": ["log_drain_default"] }
|
||||
{ "type": "string", "enum": ["log_drain_default"] },
|
||||
{ "type": "string", "enum": ["etl_pipeline_default"] }
|
||||
]
|
||||
},
|
||||
"name": { "type": "string" },
|
||||
@@ -10381,7 +10430,8 @@
|
||||
"ipv4",
|
||||
"auth_mfa_phone",
|
||||
"auth_mfa_web_authn",
|
||||
"log_drain"
|
||||
"log_drain",
|
||||
"etl_pipeline"
|
||||
]
|
||||
},
|
||||
"name": { "type": "string" },
|
||||
@@ -10420,7 +10470,8 @@
|
||||
{ "type": "string", "enum": ["ipv4_default"] },
|
||||
{ "type": "string", "enum": ["auth_mfa_phone_default"] },
|
||||
{ "type": "string", "enum": ["auth_mfa_web_authn_default"] },
|
||||
{ "type": "string", "enum": ["log_drain_default"] }
|
||||
{ "type": "string", "enum": ["log_drain_default"] },
|
||||
{ "type": "string", "enum": ["etl_pipeline_default"] }
|
||||
]
|
||||
},
|
||||
"name": { "type": "string" },
|
||||
@@ -10488,7 +10539,8 @@
|
||||
"ipv4",
|
||||
"auth_mfa_phone",
|
||||
"auth_mfa_web_authn",
|
||||
"log_drain"
|
||||
"log_drain",
|
||||
"etl_pipeline"
|
||||
]
|
||||
}
|
||||
},
|
||||
@@ -11525,6 +11577,25 @@
|
||||
"properties": {
|
||||
"effective_cache_size": { "type": "string" },
|
||||
"logical_decoding_work_mem": { "type": "string" },
|
||||
"cron.log_statement": { "type": "boolean" },
|
||||
"log_autovacuum_min_duration": {
|
||||
"type": "string",
|
||||
"description": "Default unit: ms",
|
||||
"pattern": "^(-?[0-9]+(?:\\.[0-9]+)?)(us|ms|s|min|h|d)?$"
|
||||
},
|
||||
"log_checkpoints": { "type": "boolean" },
|
||||
"log_connections": { "type": "boolean" },
|
||||
"log_disconnections": { "type": "boolean" },
|
||||
"log_duration": { "type": "boolean" },
|
||||
"log_lock_waits": { "type": "boolean" },
|
||||
"log_recovery_conflict_waits": { "type": "boolean" },
|
||||
"log_replication_commands": { "type": "boolean" },
|
||||
"log_startup_progress_interval": {
|
||||
"type": "string",
|
||||
"description": "Default unit: ms",
|
||||
"pattern": "^(-?[0-9]+(?:\\.[0-9]+)?)(us|ms|s|min|h|d)?$"
|
||||
},
|
||||
"log_temp_files": { "type": "string" },
|
||||
"maintenance_work_mem": { "type": "string" },
|
||||
"track_activity_query_size": { "type": "string" },
|
||||
"max_connections": { "type": "integer", "minimum": 1, "maximum": 262143 },
|
||||
@@ -11567,6 +11638,25 @@
|
||||
"properties": {
|
||||
"effective_cache_size": { "type": "string" },
|
||||
"logical_decoding_work_mem": { "type": "string" },
|
||||
"cron.log_statement": { "type": "boolean" },
|
||||
"log_autovacuum_min_duration": {
|
||||
"type": "string",
|
||||
"description": "Default unit: ms",
|
||||
"pattern": "^(-?[0-9]+(?:\\.[0-9]+)?)(us|ms|s|min|h|d)?$"
|
||||
},
|
||||
"log_checkpoints": { "type": "boolean" },
|
||||
"log_connections": { "type": "boolean" },
|
||||
"log_disconnections": { "type": "boolean" },
|
||||
"log_duration": { "type": "boolean" },
|
||||
"log_lock_waits": { "type": "boolean" },
|
||||
"log_recovery_conflict_waits": { "type": "boolean" },
|
||||
"log_replication_commands": { "type": "boolean" },
|
||||
"log_startup_progress_interval": {
|
||||
"type": "string",
|
||||
"description": "Default unit: ms",
|
||||
"pattern": "^(-?[0-9]+(?:\\.[0-9]+)?)(us|ms|s|min|h|d)?$"
|
||||
},
|
||||
"log_temp_files": { "type": "string" },
|
||||
"maintenance_work_mem": { "type": "string" },
|
||||
"track_activity_query_size": { "type": "string" },
|
||||
"max_connections": { "type": "integer", "minimum": 1, "maximum": 262143 },
|
||||
|
||||
@@ -265,6 +265,135 @@
|
||||
"tags": ["Projects"],
|
||||
"x-endpoint-owners": ["management-api"]
|
||||
}
|
||||
},
|
||||
"/v2/organizations/{slug}/members": {
|
||||
"get": {
|
||||
"description": "Returns a cursor-paginated list of organization members including their roles and project-scoped permissions.",
|
||||
"operationId": "v2-list-organization-members",
|
||||
"parameters": [
|
||||
{
|
||||
"name": "slug",
|
||||
"required": true,
|
||||
"in": "path",
|
||||
"description": "Organization slug",
|
||||
"schema": {
|
||||
"pattern": "^[\\w-]+$",
|
||||
"example": "tsrqponmlkjihgfedcba",
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "page",
|
||||
"required": false,
|
||||
"in": "query",
|
||||
"schema": {
|
||||
"properties": {
|
||||
"size": { "type": "integer", "minimum": 1, "maximum": 100, "required": false },
|
||||
"after": { "type": "string", "format": "uuid", "required": false },
|
||||
"before": { "type": "string", "format": "uuid", "required": false }
|
||||
},
|
||||
"type": "object"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "filter",
|
||||
"required": false,
|
||||
"in": "query",
|
||||
"schema": {
|
||||
"properties": {
|
||||
"username": { "type": "string", "required": false },
|
||||
"primary_email": { "type": "string", "format": "email", "required": false }
|
||||
},
|
||||
"type": "object"
|
||||
}
|
||||
}
|
||||
],
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": { "$ref": "#/components/schemas/V2ListMembersResponse" }
|
||||
}
|
||||
}
|
||||
},
|
||||
"401": { "description": "Unauthorized" },
|
||||
"403": { "description": "Forbidden action" },
|
||||
"429": { "description": "Rate limit exceeded" }
|
||||
},
|
||||
"security": [{ "bearer": [] }, { "fga_permissions": ["members_read"] }],
|
||||
"summary": "List members of an organization",
|
||||
"tags": ["Organizations"],
|
||||
"x-badges": [{ "name": "OAuth scope: organizations:read", "position": "after" }],
|
||||
"x-endpoint-owners": ["management-api"],
|
||||
"x-oauth-scope": "organizations:read"
|
||||
}
|
||||
},
|
||||
"/v2/organizations/{slug}/roles": {
|
||||
"get": {
|
||||
"description": "Returns a cursor-paginated list of organization roles including both org-scoped and project-scoped roles.",
|
||||
"operationId": "v2-list-organization-roles",
|
||||
"parameters": [
|
||||
{
|
||||
"name": "slug",
|
||||
"required": true,
|
||||
"in": "path",
|
||||
"description": "Organization slug",
|
||||
"schema": {
|
||||
"pattern": "^[\\w-]+$",
|
||||
"example": "tsrqponmlkjihgfedcba",
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "page",
|
||||
"required": false,
|
||||
"in": "query",
|
||||
"schema": {
|
||||
"properties": {
|
||||
"size": { "type": "integer", "minimum": 1, "maximum": 100, "required": false },
|
||||
"after": { "type": "string", "required": false },
|
||||
"before": { "type": "string", "required": false }
|
||||
},
|
||||
"type": "object"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "filter",
|
||||
"required": false,
|
||||
"in": "query",
|
||||
"schema": {
|
||||
"properties": {
|
||||
"scope": {
|
||||
"type": "string",
|
||||
"enum": ["organization", "project"],
|
||||
"required": false
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
}
|
||||
}
|
||||
],
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": { "$ref": "#/components/schemas/V2ListRolesResponse" }
|
||||
}
|
||||
}
|
||||
},
|
||||
"401": { "description": "Unauthorized" },
|
||||
"403": { "description": "Forbidden action" },
|
||||
"429": { "description": "Rate limit exceeded" }
|
||||
},
|
||||
"security": [{ "bearer": [] }, { "fga_permissions": ["members_read"] }],
|
||||
"summary": "List roles of an organization",
|
||||
"tags": ["Organizations"],
|
||||
"x-badges": [{ "name": "OAuth scope: organizations:read", "position": "after" }],
|
||||
"x-endpoint-owners": ["management-api"],
|
||||
"x-oauth-scope": "organizations:read"
|
||||
}
|
||||
}
|
||||
},
|
||||
"info": {
|
||||
@@ -893,6 +1022,195 @@
|
||||
}
|
||||
},
|
||||
"required": ["data"]
|
||||
},
|
||||
"V2ListMembersResponse": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"data": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"type": {
|
||||
"type": "string",
|
||||
"enum": ["organization_member"],
|
||||
"description": "Resource type."
|
||||
},
|
||||
"id": { "type": "string", "format": "uuid" },
|
||||
"attributes": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"username": {
|
||||
"type": "string",
|
||||
"nullable": true,
|
||||
"description": "Member's username"
|
||||
},
|
||||
"primary_email": {
|
||||
"type": "string",
|
||||
"nullable": true,
|
||||
"description": "Member's primary email"
|
||||
},
|
||||
"mfa_enabled": {
|
||||
"type": "boolean",
|
||||
"description": "Whether Multi-Factor Authentication is enabled for this member"
|
||||
},
|
||||
"is_sso_user": {
|
||||
"type": "boolean",
|
||||
"description": "Whether this member is a Single Sign-On user"
|
||||
},
|
||||
"roles": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"id": { "type": "integer", "description": "Role ID." },
|
||||
"name": {
|
||||
"type": "string",
|
||||
"description": "Role name. For project-scoped roles this is the base role name.",
|
||||
"example": "Developer"
|
||||
},
|
||||
"scope": {
|
||||
"type": "string",
|
||||
"enum": ["organization", "project"],
|
||||
"description": "Whether this role applies org-wide or is scoped to specific projects for the user."
|
||||
},
|
||||
"projects": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"ref": { "type": "string" },
|
||||
"name": { "type": "string" }
|
||||
},
|
||||
"required": ["ref", "name"]
|
||||
},
|
||||
"description": "Project refs this role is scoped to. Empty array for org-level roles."
|
||||
}
|
||||
},
|
||||
"required": ["id", "name", "scope", "projects"]
|
||||
},
|
||||
"description": "Roles assigned to this member. Includes both org-level and project-scoped roles."
|
||||
}
|
||||
},
|
||||
"required": ["username", "primary_email", "mfa_enabled", "is_sso_user", "roles"]
|
||||
}
|
||||
},
|
||||
"required": ["type", "id", "attributes"]
|
||||
}
|
||||
},
|
||||
"links": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"first": {
|
||||
"type": "string",
|
||||
"nullable": true,
|
||||
"description": "URL path to the first page if available.",
|
||||
"example": "/v2/organizations/my-org/members?page[size]=10"
|
||||
},
|
||||
"prev": {
|
||||
"type": "string",
|
||||
"nullable": true,
|
||||
"description": "URL path to the previous page.",
|
||||
"example": "/v2/organizations/my-org/members?page[size]=10&page[before]=019adf7d-4513-74c5-bb9a-f1bc0f7a95d7"
|
||||
},
|
||||
"next": {
|
||||
"type": "string",
|
||||
"nullable": true,
|
||||
"description": "URL path to the next page.",
|
||||
"example": "/v2/organizations/my-org/members?page[size]=10&page[after]=019adf7d-4513-7062-b292-78b86cc470a4"
|
||||
},
|
||||
"last": {
|
||||
"type": "string",
|
||||
"nullable": true,
|
||||
"description": "URL path to the last page if available.",
|
||||
"example": "/v2/organizations/my-org/members?page[size]=10&page[after]=019adf7d-4513-71ba-b264-21900edb4295"
|
||||
}
|
||||
},
|
||||
"required": ["prev", "next"]
|
||||
}
|
||||
},
|
||||
"required": ["data", "links"]
|
||||
},
|
||||
"V2ListRolesResponse": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"data": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"type": {
|
||||
"type": "string",
|
||||
"enum": ["organization_role"],
|
||||
"description": "Resource type."
|
||||
},
|
||||
"id": { "type": "string" },
|
||||
"attributes": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"name": {
|
||||
"type": "string",
|
||||
"description": "Role name. For project-scoped roles this is the base role name.",
|
||||
"example": "Developer"
|
||||
},
|
||||
"scope": {
|
||||
"type": "string",
|
||||
"enum": ["organization", "project"],
|
||||
"description": "Whether this role applies org-wide or is scoped to specific projects for the user."
|
||||
},
|
||||
"base_role_id": {
|
||||
"type": "integer",
|
||||
"nullable": true,
|
||||
"description": "null for org-level roles; the base role ID for project-scoped roles."
|
||||
},
|
||||
"projects": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": { "ref": { "type": "string" }, "name": { "type": "string" } },
|
||||
"required": ["ref", "name"]
|
||||
},
|
||||
"description": "Project refs this role is scoped to. Empty array for org-level roles."
|
||||
}
|
||||
},
|
||||
"required": ["name", "scope", "base_role_id", "projects"]
|
||||
}
|
||||
},
|
||||
"required": ["type", "id", "attributes"]
|
||||
}
|
||||
},
|
||||
"links": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"first": {
|
||||
"type": "string",
|
||||
"nullable": true,
|
||||
"description": "URL path to the first page if available.",
|
||||
"example": "/v2/organizations/my-org/roles?page[size]=10"
|
||||
},
|
||||
"prev": {
|
||||
"type": "string",
|
||||
"nullable": true,
|
||||
"description": "URL path to the previous page.",
|
||||
"example": "/v2/organizations/my-org/roles?page[size]=10&page[before]=019adf7d-4513-74c5-bb9a-f1bc0f7a95d7"
|
||||
},
|
||||
"next": {
|
||||
"type": "string",
|
||||
"nullable": true,
|
||||
"description": "URL path to the next page.",
|
||||
"example": "/v2/organizations/my-org/roles?page[size]=10&page[after]=019adf7d-4513-7062-b292-78b86cc470a4"
|
||||
},
|
||||
"last": {
|
||||
"type": "string",
|
||||
"nullable": true,
|
||||
"description": "URL path to the last page if available.",
|
||||
"example": "/v2/organizations/my-org/roles?page[size]=10&page[after]=019adf7d-4513-71ba-b264-21900edb4295"
|
||||
}
|
||||
},
|
||||
"required": ["prev", "next"]
|
||||
}
|
||||
},
|
||||
"required": ["data", "links"]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -735,6 +735,18 @@
|
||||
"title": "List organization members",
|
||||
"slug": "v1-list-organization-members",
|
||||
"type": "operation"
|
||||
},
|
||||
{
|
||||
"id": "v2-list-organization-members",
|
||||
"title": "List organization members",
|
||||
"slug": "v2-list-organization-members",
|
||||
"type": "operation"
|
||||
},
|
||||
{
|
||||
"id": "v2-list-organization-roles",
|
||||
"title": "List organization roles",
|
||||
"slug": "v2-list-organization-roles",
|
||||
"type": "operation"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -886,6 +898,12 @@
|
||||
"slug": "v2-preview-a-project-transfer",
|
||||
"type": "operation"
|
||||
},
|
||||
{
|
||||
"id": "v1-restart-a-project",
|
||||
"title": "Restart a project",
|
||||
"slug": "v1-restart-a-project",
|
||||
"type": "operation"
|
||||
},
|
||||
{
|
||||
"id": "v1-restore-a-project",
|
||||
"title": "Restore a project",
|
||||
|
||||
@@ -1858,6 +1858,7 @@
|
||||
},
|
||||
"/v1/oauth/token": {
|
||||
"post": {
|
||||
"description": "Supports `authorization_code`, `refresh_token`, and `urn:ietf:params:oauth:grant-type:jwt-bearer` grant types. The `jwt-bearer` grant type (IDJAG — identity-directed JWT assertion) is in beta and available on Team and Enterprise plans only.",
|
||||
"operationId": "v1-exchange-oauth-token",
|
||||
"parameters": [],
|
||||
"requestBody": {
|
||||
@@ -1869,7 +1870,11 @@
|
||||
"properties": {
|
||||
"grant_type": {
|
||||
"type": "string",
|
||||
"enum": ["authorization_code", "refresh_token"]
|
||||
"enum": [
|
||||
"authorization_code",
|
||||
"refresh_token",
|
||||
"urn:ietf:params:oauth:grant-type:jwt-bearer"
|
||||
]
|
||||
},
|
||||
"client_id": {
|
||||
"type": "string",
|
||||
@@ -1890,6 +1895,10 @@
|
||||
"refresh_token": {
|
||||
"type": "string"
|
||||
},
|
||||
"assertion": {
|
||||
"type": "string",
|
||||
"description": "IDJAG assertion JWT for grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer. Beta - available on Team and Enterprise plans only."
|
||||
},
|
||||
"resource": {
|
||||
"type": "string",
|
||||
"format": "uri",
|
||||
@@ -1925,7 +1934,8 @@
|
||||
"type": "string"
|
||||
},
|
||||
"refresh_token": {
|
||||
"type": "string"
|
||||
"type": "string",
|
||||
"description": "The `urn:ietf:params:oauth:grant-type:jwt-bearer` grant type issues access tokens only, no refresh token is returned and the token cannot be revoked via `/v1/oauth/revoke`."
|
||||
},
|
||||
"expires_in": {
|
||||
"type": "integer"
|
||||
@@ -1935,7 +1945,7 @@
|
||||
"enum": ["Bearer"]
|
||||
}
|
||||
},
|
||||
"required": ["access_token", "refresh_token", "expires_in", "token_type"],
|
||||
"required": ["access_token", "expires_in", "token_type"],
|
||||
"additionalProperties": false
|
||||
}
|
||||
}
|
||||
@@ -8483,7 +8493,7 @@
|
||||
}
|
||||
},
|
||||
"responses": {
|
||||
"201": {
|
||||
"204": {
|
||||
"description": ""
|
||||
},
|
||||
"401": {
|
||||
@@ -8560,7 +8570,7 @@
|
||||
}
|
||||
},
|
||||
"responses": {
|
||||
"201": {
|
||||
"204": {
|
||||
"description": ""
|
||||
},
|
||||
"401": {
|
||||
@@ -13622,6 +13632,58 @@
|
||||
"x-oauth-scope": "projects:write"
|
||||
}
|
||||
},
|
||||
"/v1/projects/{ref}/restart": {
|
||||
"post": {
|
||||
"operationId": "v1-restart-a-project",
|
||||
"parameters": [
|
||||
{
|
||||
"name": "ref",
|
||||
"required": true,
|
||||
"in": "path",
|
||||
"description": "Project ref",
|
||||
"schema": {
|
||||
"minLength": 20,
|
||||
"maxLength": 20,
|
||||
"pattern": "^[a-z]+$",
|
||||
"example": "abcdefghijklmnopqrst",
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
],
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": ""
|
||||
},
|
||||
"401": {
|
||||
"description": "Unauthorized"
|
||||
},
|
||||
"403": {
|
||||
"description": "Forbidden action"
|
||||
},
|
||||
"429": {
|
||||
"description": "Rate limit exceeded"
|
||||
}
|
||||
},
|
||||
"security": [
|
||||
{
|
||||
"bearer": []
|
||||
},
|
||||
{
|
||||
"fga_permissions": ["project_admin_write"]
|
||||
}
|
||||
],
|
||||
"summary": "Restarts the given project",
|
||||
"tags": ["Projects"],
|
||||
"x-badges": [
|
||||
{
|
||||
"name": "OAuth scope: projects:write",
|
||||
"position": "after"
|
||||
}
|
||||
],
|
||||
"x-endpoint-owners": ["infra", "management-api"],
|
||||
"x-oauth-scope": "projects:write"
|
||||
}
|
||||
},
|
||||
"/v1/projects/{ref}/restore": {
|
||||
"get": {
|
||||
"operationId": "v1-list-available-restore-versions",
|
||||
@@ -13847,7 +13909,8 @@
|
||||
"ipv4",
|
||||
"auth_mfa_phone",
|
||||
"auth_mfa_web_authn",
|
||||
"log_drain"
|
||||
"log_drain",
|
||||
"etl_pipeline"
|
||||
]
|
||||
},
|
||||
"variant": {
|
||||
@@ -13901,6 +13964,10 @@
|
||||
{
|
||||
"type": "string",
|
||||
"enum": ["log_drain_default"]
|
||||
},
|
||||
{
|
||||
"type": "string",
|
||||
"enum": ["etl_pipeline_default"]
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -13951,7 +14018,8 @@
|
||||
"ipv4",
|
||||
"auth_mfa_phone",
|
||||
"auth_mfa_web_authn",
|
||||
"log_drain"
|
||||
"log_drain",
|
||||
"etl_pipeline"
|
||||
]
|
||||
},
|
||||
"name": {
|
||||
@@ -14010,6 +14078,10 @@
|
||||
{
|
||||
"type": "string",
|
||||
"enum": ["log_drain_default"]
|
||||
},
|
||||
{
|
||||
"type": "string",
|
||||
"enum": ["etl_pipeline_default"]
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -14151,7 +14223,8 @@
|
||||
"ipv4",
|
||||
"auth_mfa_phone",
|
||||
"auth_mfa_web_authn",
|
||||
"log_drain"
|
||||
"log_drain",
|
||||
"etl_pipeline"
|
||||
]
|
||||
}
|
||||
},
|
||||
@@ -19469,6 +19542,43 @@
|
||||
"logical_decoding_work_mem": {
|
||||
"type": "string"
|
||||
},
|
||||
"cron.log_statement": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_autovacuum_min_duration": {
|
||||
"type": "string",
|
||||
"description": "Default unit: ms",
|
||||
"pattern": "^(-?[0-9]+(?:\\.[0-9]+)?)(us|ms|s|min|h|d)?$"
|
||||
},
|
||||
"log_checkpoints": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_connections": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_disconnections": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_duration": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_lock_waits": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_recovery_conflict_waits": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_replication_commands": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_startup_progress_interval": {
|
||||
"type": "string",
|
||||
"description": "Default unit: ms",
|
||||
"pattern": "^(-?[0-9]+(?:\\.[0-9]+)?)(us|ms|s|min|h|d)?$"
|
||||
},
|
||||
"log_temp_files": {
|
||||
"type": "string"
|
||||
},
|
||||
"maintenance_work_mem": {
|
||||
"type": "string"
|
||||
},
|
||||
@@ -19624,6 +19734,43 @@
|
||||
"logical_decoding_work_mem": {
|
||||
"type": "string"
|
||||
},
|
||||
"cron.log_statement": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_autovacuum_min_duration": {
|
||||
"type": "string",
|
||||
"description": "Default unit: ms",
|
||||
"pattern": "^(-?[0-9]+(?:\\.[0-9]+)?)(us|ms|s|min|h|d)?$"
|
||||
},
|
||||
"log_checkpoints": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_connections": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_disconnections": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_duration": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_lock_waits": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_recovery_conflict_waits": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_replication_commands": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_startup_progress_interval": {
|
||||
"type": "string",
|
||||
"description": "Default unit: ms",
|
||||
"pattern": "^(-?[0-9]+(?:\\.[0-9]+)?)(us|ms|s|min|h|d)?$"
|
||||
},
|
||||
"log_temp_files": {
|
||||
"type": "string"
|
||||
},
|
||||
"maintenance_work_mem": {
|
||||
"type": "string"
|
||||
},
|
||||
@@ -19741,6 +19888,43 @@
|
||||
"logical_decoding_work_mem": {
|
||||
"type": "string"
|
||||
},
|
||||
"cron.log_statement": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_autovacuum_min_duration": {
|
||||
"type": "string",
|
||||
"description": "Default unit: ms",
|
||||
"pattern": "^(-?[0-9]+(?:\\.[0-9]+)?)(us|ms|s|min|h|d)?$"
|
||||
},
|
||||
"log_checkpoints": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_connections": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_disconnections": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_duration": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_lock_waits": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_recovery_conflict_waits": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_replication_commands": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_startup_progress_interval": {
|
||||
"type": "string",
|
||||
"description": "Default unit: ms",
|
||||
"pattern": "^(-?[0-9]+(?:\\.[0-9]+)?)(us|ms|s|min|h|d)?$"
|
||||
},
|
||||
"log_temp_files": {
|
||||
"type": "string"
|
||||
},
|
||||
"maintenance_work_mem": {
|
||||
"type": "string"
|
||||
},
|
||||
@@ -23558,7 +23742,11 @@
|
||||
"properties": {
|
||||
"grant_type": {
|
||||
"type": "string",
|
||||
"enum": ["authorization_code", "refresh_token"]
|
||||
"enum": [
|
||||
"authorization_code",
|
||||
"refresh_token",
|
||||
"urn:ietf:params:oauth:grant-type:jwt-bearer"
|
||||
]
|
||||
},
|
||||
"client_id": {
|
||||
"type": "string",
|
||||
@@ -23579,6 +23767,10 @@
|
||||
"refresh_token": {
|
||||
"type": "string"
|
||||
},
|
||||
"assertion": {
|
||||
"type": "string",
|
||||
"description": "IDJAG assertion JWT for grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer. Beta - available on Team and Enterprise plans only."
|
||||
},
|
||||
"resource": {
|
||||
"type": "string",
|
||||
"format": "uri",
|
||||
@@ -23606,7 +23798,8 @@
|
||||
"type": "string"
|
||||
},
|
||||
"refresh_token": {
|
||||
"type": "string"
|
||||
"type": "string",
|
||||
"description": "The `urn:ietf:params:oauth:grant-type:jwt-bearer` grant type issues access tokens only, no refresh token is returned and the token cannot be revoked via `/v1/oauth/revoke`."
|
||||
},
|
||||
"expires_in": {
|
||||
"type": "integer"
|
||||
@@ -23616,7 +23809,7 @@
|
||||
"enum": ["Bearer"]
|
||||
}
|
||||
},
|
||||
"required": ["access_token", "refresh_token", "expires_in", "token_type"],
|
||||
"required": ["access_token", "expires_in", "token_type"],
|
||||
"additionalProperties": false
|
||||
},
|
||||
"OAuthRevokeTokenBody": {
|
||||
@@ -28019,7 +28212,8 @@
|
||||
"ipv4",
|
||||
"auth_mfa_phone",
|
||||
"auth_mfa_web_authn",
|
||||
"log_drain"
|
||||
"log_drain",
|
||||
"etl_pipeline"
|
||||
]
|
||||
},
|
||||
"variant": {
|
||||
@@ -28073,6 +28267,10 @@
|
||||
{
|
||||
"type": "string",
|
||||
"enum": ["log_drain_default"]
|
||||
},
|
||||
{
|
||||
"type": "string",
|
||||
"enum": ["etl_pipeline_default"]
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -28123,7 +28321,8 @@
|
||||
"ipv4",
|
||||
"auth_mfa_phone",
|
||||
"auth_mfa_web_authn",
|
||||
"log_drain"
|
||||
"log_drain",
|
||||
"etl_pipeline"
|
||||
]
|
||||
},
|
||||
"name": {
|
||||
@@ -28182,6 +28381,10 @@
|
||||
{
|
||||
"type": "string",
|
||||
"enum": ["log_drain_default"]
|
||||
},
|
||||
{
|
||||
"type": "string",
|
||||
"enum": ["etl_pipeline_default"]
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -28273,7 +28476,8 @@
|
||||
"ipv4",
|
||||
"auth_mfa_phone",
|
||||
"auth_mfa_web_authn",
|
||||
"log_drain"
|
||||
"log_drain",
|
||||
"etl_pipeline"
|
||||
]
|
||||
}
|
||||
},
|
||||
@@ -30021,6 +30225,43 @@
|
||||
"logical_decoding_work_mem": {
|
||||
"type": "string"
|
||||
},
|
||||
"cron.log_statement": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_autovacuum_min_duration": {
|
||||
"type": "string",
|
||||
"description": "Default unit: ms",
|
||||
"pattern": "^(-?[0-9]+(?:\\.[0-9]+)?)(us|ms|s|min|h|d)?$"
|
||||
},
|
||||
"log_checkpoints": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_connections": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_disconnections": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_duration": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_lock_waits": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_recovery_conflict_waits": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_replication_commands": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_startup_progress_interval": {
|
||||
"type": "string",
|
||||
"description": "Default unit: ms",
|
||||
"pattern": "^(-?[0-9]+(?:\\.[0-9]+)?)(us|ms|s|min|h|d)?$"
|
||||
},
|
||||
"log_temp_files": {
|
||||
"type": "string"
|
||||
},
|
||||
"maintenance_work_mem": {
|
||||
"type": "string"
|
||||
},
|
||||
@@ -30120,6 +30361,43 @@
|
||||
"logical_decoding_work_mem": {
|
||||
"type": "string"
|
||||
},
|
||||
"cron.log_statement": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_autovacuum_min_duration": {
|
||||
"type": "string",
|
||||
"description": "Default unit: ms",
|
||||
"pattern": "^(-?[0-9]+(?:\\.[0-9]+)?)(us|ms|s|min|h|d)?$"
|
||||
},
|
||||
"log_checkpoints": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_connections": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_disconnections": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_duration": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_lock_waits": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_recovery_conflict_waits": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_replication_commands": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"log_startup_progress_interval": {
|
||||
"type": "string",
|
||||
"description": "Default unit: ms",
|
||||
"pattern": "^(-?[0-9]+(?:\\.[0-9]+)?)(us|ms|s|min|h|d)?$"
|
||||
},
|
||||
"log_temp_files": {
|
||||
"type": "string"
|
||||
},
|
||||
"maintenance_work_mem": {
|
||||
"type": "string"
|
||||
},
|
||||
|
||||
@@ -1581,6 +1581,414 @@
|
||||
"tags": ["Projects"],
|
||||
"x-endpoint-owners": ["management-api"]
|
||||
}
|
||||
},
|
||||
"/v2/organizations/{slug}/members": {
|
||||
"get": {
|
||||
"description": "Returns a cursor-paginated list of organization members including their roles and project-scoped permissions.",
|
||||
"operationId": "v2-list-organization-members",
|
||||
"parameters": [
|
||||
{
|
||||
"name": "slug",
|
||||
"required": true,
|
||||
"in": "path",
|
||||
"description": "Organization slug",
|
||||
"schema": {
|
||||
"pattern": "^[\\w-]+$",
|
||||
"example": "tsrqponmlkjihgfedcba",
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "page",
|
||||
"required": false,
|
||||
"in": "query",
|
||||
"schema": {
|
||||
"properties": {
|
||||
"size": {
|
||||
"type": "integer",
|
||||
"minimum": 1,
|
||||
"maximum": 100,
|
||||
"required": false
|
||||
},
|
||||
"after": {
|
||||
"type": "string",
|
||||
"format": "uuid",
|
||||
"required": false
|
||||
},
|
||||
"before": {
|
||||
"type": "string",
|
||||
"format": "uuid",
|
||||
"required": false
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "filter",
|
||||
"required": false,
|
||||
"in": "query",
|
||||
"schema": {
|
||||
"properties": {
|
||||
"username": {
|
||||
"type": "string",
|
||||
"required": false
|
||||
},
|
||||
"primary_email": {
|
||||
"type": "string",
|
||||
"format": "email",
|
||||
"required": false
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
}
|
||||
}
|
||||
],
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"data": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"type": {
|
||||
"type": "string",
|
||||
"enum": ["organization_member"],
|
||||
"description": "Resource type."
|
||||
},
|
||||
"id": {
|
||||
"type": "string",
|
||||
"format": "uuid"
|
||||
},
|
||||
"attributes": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"username": {
|
||||
"type": "string",
|
||||
"nullable": true,
|
||||
"description": "Member's username"
|
||||
},
|
||||
"primary_email": {
|
||||
"type": "string",
|
||||
"nullable": true,
|
||||
"description": "Member's primary email"
|
||||
},
|
||||
"mfa_enabled": {
|
||||
"type": "boolean",
|
||||
"description": "Whether Multi-Factor Authentication is enabled for this member"
|
||||
},
|
||||
"is_sso_user": {
|
||||
"type": "boolean",
|
||||
"description": "Whether this member is a Single Sign-On user"
|
||||
},
|
||||
"roles": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"id": {
|
||||
"type": "integer",
|
||||
"description": "Role ID."
|
||||
},
|
||||
"name": {
|
||||
"type": "string",
|
||||
"description": "Role name. For project-scoped roles this is the base role name.",
|
||||
"example": "Developer"
|
||||
},
|
||||
"scope": {
|
||||
"type": "string",
|
||||
"enum": ["organization", "project"],
|
||||
"description": "Whether this role applies org-wide or is scoped to specific projects for the user."
|
||||
},
|
||||
"projects": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"ref": {
|
||||
"type": "string"
|
||||
},
|
||||
"name": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"required": ["ref", "name"]
|
||||
},
|
||||
"description": "Project refs this role is scoped to. Empty array for org-level roles."
|
||||
}
|
||||
},
|
||||
"required": ["id", "name", "scope", "projects"]
|
||||
},
|
||||
"description": "Roles assigned to this member. Includes both org-level and project-scoped roles."
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"username",
|
||||
"primary_email",
|
||||
"mfa_enabled",
|
||||
"is_sso_user",
|
||||
"roles"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": ["type", "id", "attributes"]
|
||||
}
|
||||
},
|
||||
"links": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"first": {
|
||||
"type": "string",
|
||||
"nullable": true,
|
||||
"description": "URL path to the first page if available.",
|
||||
"example": "/v2/organizations/my-org/members?page[size]=10"
|
||||
},
|
||||
"prev": {
|
||||
"type": "string",
|
||||
"nullable": true,
|
||||
"description": "URL path to the previous page.",
|
||||
"example": "/v2/organizations/my-org/members?page[size]=10&page[before]=019adf7d-4513-74c5-bb9a-f1bc0f7a95d7"
|
||||
},
|
||||
"next": {
|
||||
"type": "string",
|
||||
"nullable": true,
|
||||
"description": "URL path to the next page.",
|
||||
"example": "/v2/organizations/my-org/members?page[size]=10&page[after]=019adf7d-4513-7062-b292-78b86cc470a4"
|
||||
},
|
||||
"last": {
|
||||
"type": "string",
|
||||
"nullable": true,
|
||||
"description": "URL path to the last page if available.",
|
||||
"example": "/v2/organizations/my-org/members?page[size]=10&page[after]=019adf7d-4513-71ba-b264-21900edb4295"
|
||||
}
|
||||
},
|
||||
"required": ["prev", "next"]
|
||||
}
|
||||
},
|
||||
"required": ["data", "links"]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"401": {
|
||||
"description": "Unauthorized"
|
||||
},
|
||||
"403": {
|
||||
"description": "Forbidden action"
|
||||
},
|
||||
"429": {
|
||||
"description": "Rate limit exceeded"
|
||||
}
|
||||
},
|
||||
"security": [
|
||||
{
|
||||
"bearer": []
|
||||
},
|
||||
{
|
||||
"fga_permissions": ["members_read"]
|
||||
}
|
||||
],
|
||||
"summary": "List members of an organization",
|
||||
"tags": ["Organizations"],
|
||||
"x-badges": [
|
||||
{
|
||||
"name": "OAuth scope: organizations:read",
|
||||
"position": "after"
|
||||
}
|
||||
],
|
||||
"x-endpoint-owners": ["management-api"],
|
||||
"x-oauth-scope": "organizations:read"
|
||||
}
|
||||
},
|
||||
"/v2/organizations/{slug}/roles": {
|
||||
"get": {
|
||||
"description": "Returns a cursor-paginated list of organization roles including both org-scoped and project-scoped roles.",
|
||||
"operationId": "v2-list-organization-roles",
|
||||
"parameters": [
|
||||
{
|
||||
"name": "slug",
|
||||
"required": true,
|
||||
"in": "path",
|
||||
"description": "Organization slug",
|
||||
"schema": {
|
||||
"pattern": "^[\\w-]+$",
|
||||
"example": "tsrqponmlkjihgfedcba",
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "page",
|
||||
"required": false,
|
||||
"in": "query",
|
||||
"schema": {
|
||||
"properties": {
|
||||
"size": {
|
||||
"type": "integer",
|
||||
"minimum": 1,
|
||||
"maximum": 100,
|
||||
"required": false
|
||||
},
|
||||
"after": {
|
||||
"type": "string",
|
||||
"required": false
|
||||
},
|
||||
"before": {
|
||||
"type": "string",
|
||||
"required": false
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "filter",
|
||||
"required": false,
|
||||
"in": "query",
|
||||
"schema": {
|
||||
"properties": {
|
||||
"scope": {
|
||||
"type": "string",
|
||||
"enum": ["organization", "project"],
|
||||
"required": false
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
}
|
||||
}
|
||||
],
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"data": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"type": {
|
||||
"type": "string",
|
||||
"enum": ["organization_role"],
|
||||
"description": "Resource type."
|
||||
},
|
||||
"id": {
|
||||
"type": "string"
|
||||
},
|
||||
"attributes": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"name": {
|
||||
"type": "string",
|
||||
"description": "Role name. For project-scoped roles this is the base role name.",
|
||||
"example": "Developer"
|
||||
},
|
||||
"scope": {
|
||||
"type": "string",
|
||||
"enum": ["organization", "project"],
|
||||
"description": "Whether this role applies org-wide or is scoped to specific projects for the user."
|
||||
},
|
||||
"base_role_id": {
|
||||
"type": "integer",
|
||||
"nullable": true,
|
||||
"description": "null for org-level roles; the base role ID for project-scoped roles."
|
||||
},
|
||||
"projects": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"ref": {
|
||||
"type": "string"
|
||||
},
|
||||
"name": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"required": ["ref", "name"]
|
||||
},
|
||||
"description": "Project refs this role is scoped to. Empty array for org-level roles."
|
||||
}
|
||||
},
|
||||
"required": ["name", "scope", "base_role_id", "projects"]
|
||||
}
|
||||
},
|
||||
"required": ["type", "id", "attributes"]
|
||||
}
|
||||
},
|
||||
"links": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"first": {
|
||||
"type": "string",
|
||||
"nullable": true,
|
||||
"description": "URL path to the first page if available.",
|
||||
"example": "/v2/organizations/my-org/roles?page[size]=10"
|
||||
},
|
||||
"prev": {
|
||||
"type": "string",
|
||||
"nullable": true,
|
||||
"description": "URL path to the previous page.",
|
||||
"example": "/v2/organizations/my-org/roles?page[size]=10&page[before]=019adf7d-4513-74c5-bb9a-f1bc0f7a95d7"
|
||||
},
|
||||
"next": {
|
||||
"type": "string",
|
||||
"nullable": true,
|
||||
"description": "URL path to the next page.",
|
||||
"example": "/v2/organizations/my-org/roles?page[size]=10&page[after]=019adf7d-4513-7062-b292-78b86cc470a4"
|
||||
},
|
||||
"last": {
|
||||
"type": "string",
|
||||
"nullable": true,
|
||||
"description": "URL path to the last page if available.",
|
||||
"example": "/v2/organizations/my-org/roles?page[size]=10&page[after]=019adf7d-4513-71ba-b264-21900edb4295"
|
||||
}
|
||||
},
|
||||
"required": ["prev", "next"]
|
||||
}
|
||||
},
|
||||
"required": ["data", "links"]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"401": {
|
||||
"description": "Unauthorized"
|
||||
},
|
||||
"403": {
|
||||
"description": "Forbidden action"
|
||||
},
|
||||
"429": {
|
||||
"description": "Rate limit exceeded"
|
||||
}
|
||||
},
|
||||
"security": [
|
||||
{
|
||||
"bearer": []
|
||||
},
|
||||
{
|
||||
"fga_permissions": ["members_read"]
|
||||
}
|
||||
],
|
||||
"summary": "List roles of an organization",
|
||||
"tags": ["Organizations"],
|
||||
"x-badges": [
|
||||
{
|
||||
"name": "OAuth scope: organizations:read",
|
||||
"position": "after"
|
||||
}
|
||||
],
|
||||
"x-endpoint-owners": ["management-api"],
|
||||
"x-oauth-scope": "organizations:read"
|
||||
}
|
||||
}
|
||||
},
|
||||
"components": {
|
||||
@@ -2545,6 +2953,214 @@
|
||||
}
|
||||
},
|
||||
"required": ["data"]
|
||||
},
|
||||
"V2ListMembersResponse": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"data": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"type": {
|
||||
"type": "string",
|
||||
"enum": ["organization_member"],
|
||||
"description": "Resource type."
|
||||
},
|
||||
"id": {
|
||||
"type": "string",
|
||||
"format": "uuid"
|
||||
},
|
||||
"attributes": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"username": {
|
||||
"type": "string",
|
||||
"nullable": true,
|
||||
"description": "Member's username"
|
||||
},
|
||||
"primary_email": {
|
||||
"type": "string",
|
||||
"nullable": true,
|
||||
"description": "Member's primary email"
|
||||
},
|
||||
"mfa_enabled": {
|
||||
"type": "boolean",
|
||||
"description": "Whether Multi-Factor Authentication is enabled for this member"
|
||||
},
|
||||
"is_sso_user": {
|
||||
"type": "boolean",
|
||||
"description": "Whether this member is a Single Sign-On user"
|
||||
},
|
||||
"roles": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"id": {
|
||||
"type": "integer",
|
||||
"description": "Role ID."
|
||||
},
|
||||
"name": {
|
||||
"type": "string",
|
||||
"description": "Role name. For project-scoped roles this is the base role name.",
|
||||
"example": "Developer"
|
||||
},
|
||||
"scope": {
|
||||
"type": "string",
|
||||
"enum": ["organization", "project"],
|
||||
"description": "Whether this role applies org-wide or is scoped to specific projects for the user."
|
||||
},
|
||||
"projects": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"ref": {
|
||||
"type": "string"
|
||||
},
|
||||
"name": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"required": ["ref", "name"]
|
||||
},
|
||||
"description": "Project refs this role is scoped to. Empty array for org-level roles."
|
||||
}
|
||||
},
|
||||
"required": ["id", "name", "scope", "projects"]
|
||||
},
|
||||
"description": "Roles assigned to this member. Includes both org-level and project-scoped roles."
|
||||
}
|
||||
},
|
||||
"required": ["username", "primary_email", "mfa_enabled", "is_sso_user", "roles"]
|
||||
}
|
||||
},
|
||||
"required": ["type", "id", "attributes"]
|
||||
}
|
||||
},
|
||||
"links": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"first": {
|
||||
"type": "string",
|
||||
"nullable": true,
|
||||
"description": "URL path to the first page if available.",
|
||||
"example": "/v2/organizations/my-org/members?page[size]=10"
|
||||
},
|
||||
"prev": {
|
||||
"type": "string",
|
||||
"nullable": true,
|
||||
"description": "URL path to the previous page.",
|
||||
"example": "/v2/organizations/my-org/members?page[size]=10&page[before]=019adf7d-4513-74c5-bb9a-f1bc0f7a95d7"
|
||||
},
|
||||
"next": {
|
||||
"type": "string",
|
||||
"nullable": true,
|
||||
"description": "URL path to the next page.",
|
||||
"example": "/v2/organizations/my-org/members?page[size]=10&page[after]=019adf7d-4513-7062-b292-78b86cc470a4"
|
||||
},
|
||||
"last": {
|
||||
"type": "string",
|
||||
"nullable": true,
|
||||
"description": "URL path to the last page if available.",
|
||||
"example": "/v2/organizations/my-org/members?page[size]=10&page[after]=019adf7d-4513-71ba-b264-21900edb4295"
|
||||
}
|
||||
},
|
||||
"required": ["prev", "next"]
|
||||
}
|
||||
},
|
||||
"required": ["data", "links"]
|
||||
},
|
||||
"V2ListRolesResponse": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"data": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"type": {
|
||||
"type": "string",
|
||||
"enum": ["organization_role"],
|
||||
"description": "Resource type."
|
||||
},
|
||||
"id": {
|
||||
"type": "string"
|
||||
},
|
||||
"attributes": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"name": {
|
||||
"type": "string",
|
||||
"description": "Role name. For project-scoped roles this is the base role name.",
|
||||
"example": "Developer"
|
||||
},
|
||||
"scope": {
|
||||
"type": "string",
|
||||
"enum": ["organization", "project"],
|
||||
"description": "Whether this role applies org-wide or is scoped to specific projects for the user."
|
||||
},
|
||||
"base_role_id": {
|
||||
"type": "integer",
|
||||
"nullable": true,
|
||||
"description": "null for org-level roles; the base role ID for project-scoped roles."
|
||||
},
|
||||
"projects": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"ref": {
|
||||
"type": "string"
|
||||
},
|
||||
"name": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"required": ["ref", "name"]
|
||||
},
|
||||
"description": "Project refs this role is scoped to. Empty array for org-level roles."
|
||||
}
|
||||
},
|
||||
"required": ["name", "scope", "base_role_id", "projects"]
|
||||
}
|
||||
},
|
||||
"required": ["type", "id", "attributes"]
|
||||
}
|
||||
},
|
||||
"links": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"first": {
|
||||
"type": "string",
|
||||
"nullable": true,
|
||||
"description": "URL path to the first page if available.",
|
||||
"example": "/v2/organizations/my-org/roles?page[size]=10"
|
||||
},
|
||||
"prev": {
|
||||
"type": "string",
|
||||
"nullable": true,
|
||||
"description": "URL path to the previous page.",
|
||||
"example": "/v2/organizations/my-org/roles?page[size]=10&page[before]=019adf7d-4513-74c5-bb9a-f1bc0f7a95d7"
|
||||
},
|
||||
"next": {
|
||||
"type": "string",
|
||||
"nullable": true,
|
||||
"description": "URL path to the next page.",
|
||||
"example": "/v2/organizations/my-org/roles?page[size]=10&page[after]=019adf7d-4513-7062-b292-78b86cc470a4"
|
||||
},
|
||||
"last": {
|
||||
"type": "string",
|
||||
"nullable": true,
|
||||
"description": "URL path to the last page if available.",
|
||||
"example": "/v2/organizations/my-org/roles?page[size]=10&page[after]=019adf7d-4513-71ba-b264-21900edb4295"
|
||||
}
|
||||
},
|
||||
"required": ["prev", "next"]
|
||||
}
|
||||
},
|
||||
"required": ["data", "links"]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user