> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abundly.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# List teams

> All teams in the workspace, each with its tags, monthly credit limit and settings. Payload fields use the internal name for teams, so a team id appears as `groupId`.



## OpenAPI

````yaml /api-reference/workspace-api.json get /workspaceapi/teams
openapi: 3.1.0
info:
  title: Abundly Workspace API
  description: >-
    Workspace-level and per-agent data and administration. GET endpoints need a
    workspace API key (wk_) with the Workspace read API scope; POST, PUT, PATCH
    and DELETE endpoints need the Workspace write API scope, except sending and
    revoking invitations (POST and DELETE /workspaceapi/invites), which need the
    Invite members scope instead. The write endpoints mirror the Workspace
    Manager capability. Most are batch operations: ids travel in the JSON body,
    each id gets its own result, and per-id failures still return HTTP 200. The
    team endpoints (create, rename, members) act on a single team or membership
    and answer with standard status codes instead.


    Restricted and personal agents (`isPrivate`) are listed by
    /workspaceapi/agents but return 403 on every per-agent GET except
    promotion-requests, so enumerate from
    /workspaceapi/agents?includeOverview=true rather than iterating agent ids.
    Write endpoints can target restricted and personal agents.
  version: 1.0.0
servers:
  - url: https://service.abundly.ai
    description: Shared platform
  - url: https://{tenant}.service.abundly.ai
    description: Dedicated deployment
    variables:
      tenant:
        default: your-tenant
security:
  - workspaceApiKey: []
paths:
  /workspaceapi/teams:
    get:
      summary: List teams
      description: >-
        All teams in the workspace, each with its tags, monthly credit limit and
        settings. Payload fields use the internal name for teams, so a team id
        appears as `groupId`.
      operationId: teams
      parameters:
        - name: includeMembers
          in: query
          required: false
          description: >-
            If true, include team members (with role) on each team. Defaults to
            false.
          schema:
            type: boolean
        - name: name
          in: query
          required: false
          description: Only teams with exactly this name, ignoring case.
          schema:
            type: string
        - name: tag
          in: query
          required: false
          description: Only teams with this tag.
          schema:
            type: string
      responses:
        '200':
          description: Success. Empty result sets are also 200.
          content:
            application/json:
              schema:
                description: >-
                  All teams in the workspace. `members` is only present when
                  includeMembers=true.
                type: object
                properties:
                  customerId:
                    type: string
                  teamsEnabled:
                    description: >-
                      False when teams are off for the workspace; `teams` is
                      then empty.
                    type: boolean
                  teams:
                    type: array
                    items:
                      description: >-
                        A team. The internal name for teams is `group`, so team
                        ids appear as `groupId` on other payloads.
                      type: object
                      properties:
                        id:
                          type: string
                        customerId:
                          type: string
                        name:
                          type: string
                        tags:
                          type: array
                          items:
                            type: string
                        monthlyCreditLimit:
                          description: >-
                            Credits all of the team's agents may use together
                            per calendar month. Absent means none.
                          type: number
                        capabilityAdminSettings:
                          description: >-
                            Which capabilities agents may use, and the default
                            for capabilities with no explicit entry.
                          type: object
                          properties:
                            capabilities:
                              description: Keyed by capability name.
                              type: object
                              propertyNames:
                                type: string
                              additionalProperties:
                                type: object
                                properties:
                                  available:
                                    description: >-
                                      Explicitly on or off; absent follows
                                      `defaultMode`.
                                    type: boolean
                                  extraInstructions:
                                    type: string
                                  contact:
                                    description: >-
                                      Who users ask for access or credentials;
                                      shown in the portal.
                                    type: string
                                  availableInPhases:
                                    description: Empty or absent means every phase.
                                    type: array
                                    items:
                                      type: string
                                  enabledOnNewAgents:
                                    description: >-
                                      Whether agents created from scratch get
                                      this capability; absent inherits the
                                      default.
                                    type: boolean
                                additionalProperties: {}
                            defaultMode:
                              description: >-
                                "opt-in" or "opt-out" (default). Applies to
                                unlisted capabilities.
                              type: string
                            allowUserMcpServers:
                              type: boolean
                            defaultCreditDetails:
                              type: boolean
                            hideUnavailableCapabilities:
                              type: boolean
                            defaultContact:
                              description: >-
                                Contact for integrations that have no contact of
                                their own.
                              type: string
                          additionalProperties: {}
                        documentWriteAccess:
                          type: object
                          properties:
                            humanPolicy:
                              type: string
                            agentPolicy:
                              type: string
                          additionalProperties: {}
                        notificationSettings:
                          type: object
                          properties: {}
                          additionalProperties: {}
                        members:
                          type: array
                          items:
                            type: object
                            properties:
                              userId:
                                type: string
                              name:
                                type: string
                              email:
                                type: string
                              role:
                                description: >-
                                  The member's role in this team: "admin",
                                  "member" or "guest".
                                type: string
                            required:
                              - userId
                            additionalProperties: {}
                      required:
                        - id
                        - customerId
                        - name
                      additionalProperties: {}
                required:
                  - customerId
                  - teamsEnabled
                  - teams
                additionalProperties: false
        '400':
          $ref: '#/components/responses/Error'
        '401':
          $ref: '#/components/responses/Error'
        '403':
          $ref: '#/components/responses/Error'
        '404':
          $ref: '#/components/responses/Error'
components:
  responses:
    Error:
      description: >-
        Error. Every failure on this API returns JSON with a single `error`
        field.
      content:
        application/json:
          schema:
            type: object
            properties:
              error:
                description: >-
                  Human-readable message. Every error on this API uses this
                  shape.
                type: string
            required:
              - error
            additionalProperties: false
  securitySchemes:
    workspaceApiKey:
      type: http
      scheme: bearer
      description: >-
        Workspace API key (wk_). GET endpoints require the Workspace read API
        scope, POST, PUT, PATCH and DELETE endpoints the Workspace write API
        scope, and sending or revoking invitations (POST and DELETE
        /workspaceapi/invites) the Invite members scope. A key stops working
        when it expires or is disabled.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.