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

# List custody account groups

> Retrieves the custody account groups owned by the calling entity. Each
row includes an aggregate USD-equivalent balance and a short preview
of member account names; use the detail endpoint for metadata only.




## OpenAPI

````yaml openapi/accounts.yaml get /v1/accounts/groups
openapi: 3.0.2
info:
  version: 1.0.0
  title: Accounts (Stablecoin) API
  description: >
    Circle's Accounts API provides endpoints for managing stablecoin accounts --
    including transfers,

    withdrawals, deposits, wire and ACH bank accounts, and blockchain addresses.


    An **Account** is a general representation of a ledger or custody object
    that holds balances. It can be a business account,

    a stablecoin account ledger for an end user, an extra sub-ledger, or any
    future custody solution.
  license:
    name: Circle License
    url: https://circle.com/terms
servers:
  - url: https://api-sandbox.circle.com
  - url: https://api.circle.com
security: []
tags:
  - name: Accounts
    description: Manage accounts.
  - name: Account Groups
    description: Manage custody account groups and their memberships.
  - name: Transactions
    description: |
      Get a unified, customer-friendly view of account transaction activity.
  - name: Transfers
    description: Manage account transfers.
  - name: Withdrawals
    description: Manage account bank withdrawals (fiat offramp).
  - name: Wires
    description: Manage account bank accounts for wire transfers.
  - name: ACH
    description: Manage account bank accounts for ACH transfers.
  - name: Deposits
    description: Get information on account bank deposits.
  - name: Deposit Addresses
    description: Manage account deposit addresses.
  - name: Recipient Addresses
    description: Manage account recipient addresses used for transfers.
paths:
  /v1/accounts/groups:
    get:
      tags:
        - Account Groups
      summary: List custody account groups
      description: |
        Retrieves the custody account groups owned by the calling entity. Each
        row includes an aggregate USD-equivalent balance and a short preview
        of member account names; use the detail endpoint for metadata only.
      operationId: listAccountGroups
      parameters:
        - $ref: '#/components/parameters/PageBefore'
        - $ref: '#/components/parameters/PageAfter'
        - $ref: '#/components/parameters/PageSize'
      responses:
        '200':
          description: Successfully retrieved a list of custody account groups.
          headers:
            X-Request-Id:
              $ref: '#/components/headers/XRequestId'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListAccountGroupsResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/NotAuthorized'
        '500':
          $ref: '#/components/responses/InternalServerError'
      security:
        - bearerAuth: []
components:
  parameters:
    PageBefore:
      name: pageBefore
      description: >-
        A collection ID value used for pagination. It marks the exclusive end of
        a page. When provided, the collection resource will return the next `n`
        items before the id, with `n` being specified by `pageSize`.
      in: query
      required: false
      schema:
        type: string
        example: def9520a-5280-4089-9b02-3c9ef8fc8514
    PageAfter:
      name: pageAfter
      description: >-
        A collection ID value used for pagination. It marks the exclusive
        beginning of a page. When provided, the collection resource will return
        the next `n` items after the id, with `n` being specified by `pageSize`.
      in: query
      required: false
      schema:
        type: string
        example: bce1e961-bdb8-4983-a9c2-0b3fbc2614cf
    PageSize:
      name: pageSize
      description: >
        Limits the number of items to be returned.


        Some collections have a strict upper bound that will disregard this
        value. In case the specified value is higher

        than the allowed limit, the collection limit will be used.


        If omitted, the collection will determine the page size itself.
      in: query
      required: false
      schema:
        type: integer
        minimum: 1
        example: 5
  headers:
    XRequestId:
      description: >
        Circle-generated universally unique identifier (UUID v4). Useful for
        identifying a specific request when communicating with Circle Support.
      schema:
        $ref: '#/components/schemas/XRequestId'
  schemas:
    ListAccountGroupsResponse:
      title: ListAccountGroupsResponse
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/CustodyAccountGroup'
    XRequestId:
      type: string
      format: uuid
      example: 2adba88e-9d63-44bc-b975-9b6ae3440dde
    CustodyAccountGroup:
      type: object
      description: >
        A customer-defined grouping of custody accounts owned by a single
        entity. Each account can belong to at most one group at a time.

        The `approximateBalanceInUsd` and `accountsPreview` fields are aggregate
        views populated by the list-groups endpoint. The single-group detail
        endpoint returns the metadata-only view and omits both fields.
      required:
        - id
        - name
        - createDate
        - updateDate
      properties:
        id:
          type: string
          format: uuid
          description: Identifier of the custody account group.
          example: 9c0f1c0d-6c61-4f3d-9b8a-1a3a4b3c5d6e
        name:
          type: string
          description: Display name.
          maxLength: 32
          example: Team A
        approximateBalanceInUsd:
          description: >
            Aggregate USD-equivalent balance across every account in the group.
            Returned by the list endpoint only.
          allOf:
            - $ref: '#/components/schemas/FiatMoneyUsd'
        accountsPreview:
          description: >
            Lightweight summary of member accounts (total count + a few names).
            Returned by the list endpoint only.
          allOf:
            - $ref: '#/components/schemas/AccountsPreview'
        createDate:
          description: Timestamp the group was created.
          allOf:
            - $ref: '#/components/schemas/UtcTimestamp'
        updateDate:
          description: Timestamp the group was last updated.
          allOf:
            - $ref: '#/components/schemas/UtcTimestamp'
    Error:
      type: object
      required:
        - code
        - message
      properties:
        code:
          type: integer
          description: >
            Circle internal status code from the platform `CoreStatusCode` enum
            (and its domain-specific extensions). **This is not the HTTP status
            code** — `-1` is the catch-all unknown error, `1`/`2` indicate API
            parameter problems, `3` is forbidden, `4` is unauthorized, and
            larger values identify domain-specific failures. Consumers should
            rely on the HTTP status line for transport-level error class and on
            this field for the specific Circle error case.
          example: 2
        message:
          type: string
          description: >-
            Internal error message; suitable for logging but not for end-user
            display.
          example: API parameter invalid.
        externalMessage:
          type: string
          description: >
            End-user-displayable error message. Present when the server has
            generated a customer-facing variant for this error; omitted
            otherwise.
          example: The provided amount exceeds the maximum allowed.
    FiatMoneyUsd:
      type: object
      required:
        - amount
        - currency
      properties:
        amount:
          type: string
          description: Magnitude of the amount, in units of the currency, with a `.`.
          example: '3.14'
        currency:
          description: Currency code.
          type: string
          enum:
            - USD
    AccountsPreview:
      type: object
      description: >
        Lightweight preview of the accounts assigned to a custody account group.
        Used by the list-groups endpoint to render an at-a-glance summary
        without requiring the caller to also page through `/v1/accounts`.
      required:
        - totalCount
        - accountNames
      properties:
        totalCount:
          type: integer
          description: Total number of accounts assigned to the group.
          example: 15
        accountNames:
          type: array
          description: >
            Sample of member account descriptions, ordered alphabetically and
            truncated to a small preview size. May be shorter than `totalCount`.
          items:
            type: string
          example:
            - Operations US
            - Reserve US
            - Treasury APAC
            - Treasury EU
            - Treasury US
    UtcTimestamp:
      type: string
      description: ISO-8601 UTC date/time format.
      example: '2020-04-10T02:13:30.000Z'
  responses:
    BadRequest:
      description: The request cannot be processed due to a client error.
      headers:
        X-Request-Id:
          $ref: '#/components/headers/XRequestId'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            code: 2
            message: API parameter invalid.
    NotAuthorized:
      description: >-
        The request has not been applied because it lacks valid authentication
        credentials.
      headers:
        X-Request-Id:
          $ref: '#/components/headers/XRequestId'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            code: 4
            message: Unauthorized.
    InternalServerError:
      description: >-
        The server encountered an unexpected condition that prevented it from
        fulfilling the request.
      headers:
        X-Request-Id:
          $ref: '#/components/headers/XRequestId'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            code: -1
            message: 'Something went wrong. errId: 1f0b0c455e40f753f07b4f0ae6abd4b4'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````