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

# List Team Pulse Dashboards

> List your Duvo Pulse dashboards for the team in the URL. Ordered most recently updated first, except scope=automation, which is ordered by creation time (then id) so the whole scope can be read with the after_id cursor without a concurrent change shifting a page boundary.



## OpenAPI

````yaml https://api.duvo.ai/v2/documentation/mintlify.json get /v2/teams/{teamId}/artifacts
openapi: 3.0.3
info:
  title: Duvo Public API
  description: >-
    Public API for programmatic access to Duvo. Authenticate with API keys
    created in the Duvo dashboard.


    ## Rate limits


    Requests are counted per API key. Every response advertises the quota with
    the IETF RateLimit fields, so a client can self-throttle without waiting for
    a rejection:


    - `RateLimit-Policy: "default";q=<quota>;w=<window seconds>` — the policy in
    force: `q` requests per `w` seconds.

    - `RateLimit: "default";r=<remaining>;t=<seconds>` — the live state: `r`
    requests left, quota resetting in `t` seconds.

    - Read the quota from the headers rather than hard-coding it; it differs per
    environment.

    - The same numbers are also sent as `ratelimit-limit`, `ratelimit-remaining`
    and `ratelimit-reset`.


    Once the quota is exhausted the API answers `429 Too Many Requests` with
    `Retry-After` set to the seconds to wait; honor it instead of retrying
    immediately.
  version: 1.0.0
servers:
  - url: https://api.duvo.ai
    description: Production server
security: []
tags:
  - name: Runs
    description: Start, monitor, and manage agent runs (Runs in the Duvo UI)
  - name: Sandboxes
    description: Create sandboxes and upload files for agent runs
  - name: Queues
    description: Manage queues and their agent bindings
  - name: Cases
    description: Create, list, and manage cases and their labels within queues
  - name: Case Approvals
    description: Submit decisions on pending case approval requests issued by an agent run
  - name: Case Attachments
    description: Upload, list, download, and remove the files attached to a case
  - name: Automations
    description: >-
      List and manage automations — the workspace container that groups the
      agents and queues making up one end-to-end process
  - name: Agents
    description: Create and manage agents for automation workloads
  - name: Revisions
    description: Create and manage agent revisions — the underlying Setup for an Agent
  - name: Agent Folders
    description: Organize agents into folders
  - name: Agent Memory
    description: Read an agent's memory files (the Memory feature in the Duvo UI)
  - name: Suggestions
    description: >-
      List, apply, and dismiss an Agent's improvement suggestions (the
      suggestions inbox in the Duvo UI)
  - name: Notifications
    description: >-
      List, read, dismiss, and clear the authenticated user's team notifications
      (the Notification Center in the Duvo UI)
  - name: Schedules
    description: List schedules configured for an agent
  - name: Duvo Pulse
    description: >-
      Create, list, iterate on, and delete Duvo Pulse dashboards — live,
      agent-generated visualizations of your Duvo data
  - name: Case Triggers
    description: >-
      Configure case triggers that automatically dispatch agent runs (Runs in
      the Duvo UI) for cases added to a queue
  - name: Triggers
    description: >-
      Configure event triggers that start a Run automatically when an external
      event fires (e.g. an email arrives, a Linear issue is created, or a file
      changes in Google Drive)
  - name: Skills
    description: Manage team and system skills (reusable knowledge packs).
  - name: Files
    description: Manage team files.
  - name: Plugins
    description: Discover plugins that can be referenced from a revision.
  - name: Organizations
    description: Inspect organizations you belong to and the teams within them
  - name: Team
    description: Inspect the team and members associated with the API key
  - name: Invites
    description: >-
      Invite people to a team — one at a time or in bulk, scoped to a Clarity
      process or the whole team — and manage the team's shareable invite link
  - name: Integrations
    description: Browse the team's catalog of available integration types
  - name: Connections
    description: Manage your connected integrations
  - name: Credentials
    description: >-
      Manage logins (domain + username + password + TOTP) used by agents to sign
      in to websites and desktop applications, and attach them to assignment
      revisions
  - name: Secrets
    description: >-
      Manage env-var secrets injected into runs, and attach them to assignment
      revisions. Only metadata is exposed; values are never returned
  - name: Revision Integrations
    description: >-
      Attach integrations to assignment revisions, pin specific connections, and
      link queues
  - name: ClarityV2
    description: >-
      Manage Clarity v2 process snapshots, automation proposals, and the
      extra-capture-request follow-up loop
paths:
  /v2/teams/{teamId}/artifacts:
    get:
      tags:
        - Duvo Pulse
      summary: List Team Pulse Dashboards
      description: >-
        List your Duvo Pulse dashboards for the team in the URL. Ordered most
        recently updated first, except scope=automation, which is ordered by
        creation time (then id) so the whole scope can be read with the after_id
        cursor without a concurrent change shifting a page boundary.
      operationId: listTeamPulseDashboards
      parameters:
        - schema:
            default: 20
            type: integer
            minimum: 1
            maximum: 100
          in: query
          name: limit
          required: false
          description: Number of results per page (1-100, default 20)
        - schema:
            default: 0
            type: integer
            minimum: 0
            maximum: 9007199254740991
          in: query
          name: offset
          required: false
          description: Number of results to skip
        - schema:
            default: created
            type: string
            enum:
              - created
              - shared
              - team
              - automation
          in: query
          name: scope
          required: false
          description: >-
            Which dashboards to return: 'created' (yours, the default), 'team'
            (published to your whole team by a teammate), 'shared' (shared with
            you individually by a teammate), or 'automation' (owned by one of
            your team's automations, each carrying its automation's name).
        - schema:
            type: string
            format: uuid
          in: query
          name: after_id
          required: false
          description: >-
            Keyset cursor for reading the whole 'automation' scope: the id of
            the last dashboard you received; returns the page after it in
            (created_at, id) order. Use this instead of 'offset' when reading
            every page, so a dashboard created, updated or deleted between
            requests cannot shift a page boundary you have already passed. 400
            when the id no longer names a dashboard (restart from the first
            page). Only valid with scope=automation.
        - name: teamId
          in: path
          required: true
          schema:
            type: string
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  artifacts:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          format: uuid
                        team_id:
                          nullable: true
                          type: string
                          format: uuid
                        organization_id:
                          nullable: true
                          type: string
                          format: uuid
                        automation_id:
                          nullable: true
                          type: string
                          format: uuid
                        automation_name:
                          description: >-
                            Name of the owning automation, resolved only on the
                            `automation` list scope — the one surface that
                            renders the composite `<Automation> / <Title>`
                            label. Absent elsewhere; a client reads absence and
                            null the same way.
                          nullable: true
                          type: string
                        created_by_user_id:
                          type: string
                          format: uuid
                        title:
                          type: string
                          nullable: true
                        icon:
                          nullable: true
                          type: string
                          minLength: 1
                          maxLength: 64
                          pattern: ^[a-z0-9]+(?:-[a-z0-9]+)*$
                        html_code_present:
                          type: boolean
                        content_format:
                          type: string
                          enum:
                            - html
                            - openui
                        status:
                          type: string
                          enum:
                            - not_started
                            - pending
                            - running
                            - completed
                            - failed
                            - interrupted
                        visibility:
                          type: string
                          enum:
                            - private
                            - team
                            - organization
                            - teams
                        publish_permission:
                          type: string
                          enum:
                            - view
                            - edit
                        has_live_connector_data:
                          type: boolean
                        thumbnail_url:
                          type: string
                          nullable: true
                        last_refresh_at:
                          type: string
                          nullable: true
                        created_at:
                          type: string
                        updated_at:
                          type: string
                      required:
                        - id
                        - team_id
                        - organization_id
                        - created_by_user_id
                        - title
                        - html_code_present
                        - status
                        - visibility
                        - publish_permission
                        - created_at
                        - updated_at
                      additionalProperties: false
                  total:
                    type: number
                  limit:
                    type: number
                  offset:
                    type: number
                required:
                  - artifacts
                  - total
                  - limit
                  - offset
                additionalProperties: false
        '400':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                  - error
                additionalProperties: false
        '401':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                  - error
                additionalProperties: false
        '403':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                  - error
                additionalProperties: false
        '404':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                  - error
                additionalProperties: false
      security:
        - bearerAuth: []
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: API key authentication. Get your API key from the Duvo dashboard.

````