Skip to content
Get started

List

teams.list() -> TeamListResponse
GET/teams

List the teams the user belongs to

ReturnsExpand Collapse
class TeamListResponse: …
teams: List[Team]

A list of the teams the user belongs to

id: str

The team ID (example: “eyVcnFJcR92BxBkz7N6g5w”)

context: TeamContext

The context of the team for the current authenticated user

invitations_count: float

The number of invitations on this team

keys_count: float

The number of API keys on this team

user_role: Literal["admin", "key", "member"]

The authenticated user’s role for this team

One of the following:
"admin"
"key"
"member"
users_count: float

The number of users on this team

created_at: str

The team creation date as an ISO string (example: “2023-02-03T11:19:41.579Z”)

name: str

The team name (example: “Scenario”)

plan: Literal["cu-basic", "cu-creator", "cu-max", 9 more]

The team plan

One of the following:
"cu-basic"
"cu-creator"
"cu-max"
"cu-pro"
"cu-pro-q3-25"
"cu-team"
"cu-team-v2"
"enterprise"
"essential"
"free"
"premium"
"pro"
projects: List[TeamProject]

Projects of the team

id: str
created_at: str
name: str
updated_at: str
avatar: Optional[TeamProjectAvatar]
asset_id: Optional[str]

ID of the asset used as thumbnail if provided, otherwise undefined

url: Optional[str]

Signed URL of the assetId or free url if assetId is undefined

disable_ip_detection: Optional[bool]

When true, IP detection is switched off for this project.

quality_gate_auto_detect: Optional[bool]

Whether Quality Gate auto-detection runs on generation for this project.

type: Literal["personal", "shared"]

The team type

One of the following:
"personal"
"shared"
updated_at: str

The team update date as an ISO string (example: “2023-02-03T11:19:41.579Z”)

avatar: Optional[TeamAvatar]

The team’s avatar

asset_id: Optional[str]

ID of the asset used as thumbnail if provided, otherwise undefined

url: Optional[str]

Signed URL of the assetId or free url if assetId is undefined

byok: Optional[TeamByok]

BYOK pricing override. Admin-only — omitted for non-admin callers.

markup_multiplier: float
updated_at: Optional[str]

ISO timestamp of the last update. Optional — legacy rows may lack it.

updated_by: Optional[str]

Human-readable handle of who last updated the markup (display name).

default_user_max_consumption: Optional[float]

Team-wide default max consumption (CU) applied to every member over the billing period, unless overridden per member. Absent when no team-wide default is set.

ip_detection_enforcement: Optional[Literal["active-fail-closed", "active-fail-open", "disabled"]]

The IP detection enforcement posture for the team. ‘disabled’: IP detection is not performed. ‘active-fail-open’: IP detection runs; on detector error the request is allowed through. ‘active-fail-closed’: IP detection runs; on detector error the request is blocked.

One of the following:
"active-fail-closed"
"active-fail-open"
"disabled"
quality_gate_auto_detect: Optional[bool]

Quality Gate auto-detection default for the team.

List

import os
from scenario_sdk import Scenario

client = Scenario(
    api_key=os.environ.get("SCENARIO_SDK_API_KEY"),  # This is the default and can be omitted
    api_secret=os.environ.get("SCENARIO_SDK_API_SECRET"),  # This is the default and can be omitted
)
teams = client.teams.list()
print(teams.teams)
{
  "teams": [
    {
      "id": "id",
      "context": {
        "invitationsCount": 0,
        "keysCount": 0,
        "userRole": "admin",
        "usersCount": 0
      },
      "createdAt": "createdAt",
      "name": "name",
      "plan": "cu-basic",
      "projects": [
        {
          "id": "id",
          "createdAt": "createdAt",
          "name": "name",
          "updatedAt": "updatedAt",
          "avatar": {
            "assetId": "assetId",
            "url": "url"
          },
          "disableIpDetection": true,
          "qualityGateAutoDetect": true
        }
      ],
      "type": "personal",
      "updatedAt": "updatedAt",
      "avatar": {
        "assetId": "assetId",
        "url": "url"
      },
      "byok": {
        "markupMultiplier": 0,
        "updatedAt": "updatedAt",
        "updatedBy": "updatedBy"
      },
      "defaultUserMaxConsumption": 0,
      "ipDetectionEnforcement": "active-fail-closed",
      "qualityGateAutoDetect": true
    }
  ]
}
Returns Examples
{
  "teams": [
    {
      "id": "id",
      "context": {
        "invitationsCount": 0,
        "keysCount": 0,
        "userRole": "admin",
        "usersCount": 0
      },
      "createdAt": "createdAt",
      "name": "name",
      "plan": "cu-basic",
      "projects": [
        {
          "id": "id",
          "createdAt": "createdAt",
          "name": "name",
          "updatedAt": "updatedAt",
          "avatar": {
            "assetId": "assetId",
            "url": "url"
          },
          "disableIpDetection": true,
          "qualityGateAutoDetect": true
        }
      ],
      "type": "personal",
      "updatedAt": "updatedAt",
      "avatar": {
        "assetId": "assetId",
        "url": "url"
      },
      "byok": {
        "markupMultiplier": 0,
        "updatedAt": "updatedAt",
        "updatedBy": "updatedBy"
      },
      "defaultUserMaxConsumption": 0,
      "ipDetectionEnforcement": "active-fail-closed",
      "qualityGateAutoDetect": true
    }
  ]
}