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

# Get cards assigned to a user

> This endpoint provides a preview of results based on specified filters for boards, cards,
or pages. The request includes a type parameter (board, card, or page) and supports
advanced filtering criteria, such as time ranges, specific project or member associations,
and sorting preferences.
Pagination is supported via cursor and count parameters.


## How to use this endpoint to list cards assigned to a user

To get all the cards assigned to a specific user, use the following example request:

```bash theme={null}
curl -X POST 'https://api.superthread.com/v1/{team_id}/views/preview?count=100' \
  -H 'Authorization: Bearer <PAT>' \
  --data-raw '{
    "card_filters": {
      "include": {
        "members": ["<user_id>"]
      },
      "exclude": {
        "statuses": ["completed", "cancelled"]
      },
      "sort_by": {
        "field": "time_created",
        "order_ascending": false
      }
    },
    "type": "card"
  }'
```

Replace `{team_id}` with your workspace's team ID and`<user_id>` with the ID of the user you want to filter for.

This request will return all cards assigned to the selected user, excluding any cards with the statuses completed or cancelled.
You can further adjust the filters (see below) to refine your search.


## OpenAPI

````yaml POST /{team_id}/views/preview
openapi: 3.0.0
info:
  description: Superthread Public API Specification
  version: '0.1'
  title: Public API
  contact:
    email: engineering@superthread.com
servers:
  - url: https://api.superthread.com/v1
security:
  - BearerAuth: []
tags:
  - name: AI
    description: >-
      [Service: AI]. Handles AI-powered functionalities, such as
      recommendations, predictions, and automation features.
  - name: Activity
    description: >-
      [Service: Activity] Manages all activities; creating notifications and
      digests
  - name: Auth
    description: >-
      [Service: Auth] Responsible for user authentication, authorization, and
      session management.
  - name: Boards
    description: >-
      [Service: Boards] Manages core collaboration features such as "boards",
      "cards", "lists", "sprints", "epics".
  - name: Comments
    description: >-
      [Service: Comments] Handles the creation, editing, and management of
      comments across various entities.
  - name: Favourites
    description: >-
      [Service: Favourites] Responsible for favouriting resources in the system
      for quick access.
  - name: Files
    description: >-
      [Service: Files] Manages file uploads, storage, and retrieval for user and
      project resources.
  - name: Importer
    description: >-
      [Service: Importer] Handles data import operations from external sources
      into the platform.
  - name: Integrations
    description: >-
      [Service: Integrations] Facilitates connectivity with external tools and
      services, enabling smooth integration with third-party platforms and APIs.
  - name: Pages
    description: >-
      [Service: Pages] Manages the creation and organization of both public and
      private pages, supporting structured content and navigation and
      collaboration.
  - name: Projects
    description: '[Service: Projects] Handles all project related tasks.'
  - name: Reports
    description: >-
      [Service: Reports] Generates and manages analytical reports and insights
      for users and projects.
  - name: Search
    description: >-
      [Service: Search] Provides search functionalities, including indexing and
      retrieval of platform data.
  - name: TimeTracking
    description: >-
      [Service: TimeTracking] Manages time entries, active timers, time
      categories, billing rates, and audit/lock for time-tracking workflows.
  - name: Views
    description: >-
      [Feature] Provides tools to create and customize views, enabling users to
      organize and visualize their data according to their preferences and
      workflows.
  - name: OAuth2
    description: >-
      [Feature] Supports OAuth2 integration for seamless user authentication and
      authorization, ensuring secure access to external APIs and services.
  - name: Sprints
    description: >-
      [Feature] Facilitates sprint management within agile workflows, including
      planning, progress tracking, and reporting.
  - name: Cards
    description: >-
      [Feature] A Card is the core concept used in the system to describe an
      individual task or work item. They are used across Boards, Sprints, and
      Roadmaps. Cards include features like descriptions, checklists, comments,
      priorities, tags and more.
  - name: Checklists
    description: >-
      [Feature] A Checklist is a list of items that need to be completed. It is
      used to track progress on a card.
  - name: Lists
    description: >-
      [Feature] Represents a collection of tasks or items grouped within
      different contexts in the system. Lists (externally referenced as
      "statuses") are utilized across various entities such as boards, sprints,
      and roadmaps.
  - name: Notes
    description: >-
      [Feature] Enables users to create, edit, and organize notes, supporting
      rich text, attachments, transcriptions and AI enhancements.
  - name: Tags
    description: >-
      [Feature] Groups endpoints related to the creation, retrieval, updating,
      deletion, and merging of tags within teams (workspaces).
  - name: Agents
    description: >-
      [Feature] Manages agents and runs. Provides CRUD operations for agents,
      launching cloud agents, monitoring agent status, retrieving conversations,
      and sending follow-ups.
paths:
  /{team_id}/views/preview:
    parameters:
      - $ref: '#/components/parameters/path_team_id'
      - in: query
        name: cursor
        required: false
        description: cursor for pagination
        schema:
          type: string
      - in: query
        name: count
        required: false
        description: max number of items to return. defaults to 25
        schema:
          type: integer
    post:
      tags:
        - Views
      summary: Preview results
      description: >
        This endpoint provides a preview of results based on specified filters
        for boards, cards,

        or pages. The request includes a type parameter (board, card, or page)
        and supports

        advanced filtering criteria, such as time ranges, specific project or
        member associations,

        and sorting preferences.

        Pagination is supported via cursor and count parameters.
      operationId: viewPreview
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GetViewPreviewRequest'
        description: >-
          Preview request. Must include a type and the corresponding set of
          filters
        required: true
      responses:
        '200':
          description: Preview results
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ViewResults'
        default:
          description: client error
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    $ref: '#/components/schemas/Error'
components:
  parameters:
    path_team_id:
      in: path
      name: team_id
      description: >-
        Team ID is an alphanumerical string that identifies a Team. This is
        externally referred to as a "Workspace".
      required: true
      schema:
        type: string
  schemas:
    GetViewPreviewRequest:
      type: object
      allOf:
        - $ref: '#/components/schemas/ViewFilters'
      properties:
        type:
          type: string
          example: card
          enum:
            - board
            - card
            - page
    ViewResults:
      allOf:
        - $ref: '#/components/schemas/ResponseMetadata'
      properties:
        boards:
          type: array
          items:
            $ref: '#/components/schemas/Board'
        cards:
          type: array
          items:
            $ref: '#/components/schemas/Card'
        pages:
          type: array
          items:
            $ref: '#/components/schemas/Page'
    Error:
      type: object
      properties:
        id:
          type: string
          example: err5f744ab
        code:
          type: integer
          format: int32
          example: 403
        sec:
          $ref: '#/components/schemas/SuperthreadErrorCode'
        message:
          type: string
          example: You do not have access to this resource
          description: A user-friendly error message
        date:
          $ref: '#/components/schemas/STime'
    ViewFilters:
      type: object
      properties:
        board_filters:
          type: object
          properties:
            time_created:
              $ref: '#/components/schemas/DateRangeFilter'
            time_updated:
              $ref: '#/components/schemas/DateRangeFilter'
            include:
              $ref: '#/components/schemas/BoardViewFilter'
            exclude:
              $ref: '#/components/schemas/BoardViewFilter'
            sort_by:
              $ref: '#/components/schemas/ViewBoardSortBy'
          nullable: true
        card_filters:
          type: object
          properties:
            is_parent:
              type: boolean
              x-omitempty: true
              nullable: true
            is_child:
              type: boolean
              x-omitempty: true
              nullable: true
            has_estimate:
              type: boolean
              description: Filter on cards that have an estimate
              x-omitempty: true
              nullable: true
            has_members:
              type: boolean
              description: 'Filter on either: no members or at least 1 member assigned'
              x-omitempty: true
              nullable: true
            has_priority:
              type: boolean
              description: Filter on cards that have a priority
              x-omitempty: true
              nullable: true
            has_status:
              type: boolean
              description: Filter on cards that have a non empty status
              x-omitempty: true
              nullable: true
            has_tags:
              type: boolean
              description: Filter on cards that have no tags or at least 1 tag
              x-omitempty: true
              nullable: true
            has_linked_card:
              type: boolean
              description: Filter on cards that have no links or at least 1 link
              x-omitempty: true
              nullable: true
            has_due_date:
              type: boolean
              description: Filter on cards that have a non empty due date
              x-omitempty: true
              nullable: true
            has_start_date:
              type: boolean
              description: Filter on cards that have a non empty start date
              x-omitempty: true
              nullable: true
            has_completed_date:
              type: boolean
              description: Filter on cards that have a non empty completed date
              x-omitempty: true
              nullable: true
            has_parent_card:
              type: boolean
              description: Filter on cards that have a parent card
              x-omitempty: true
              nullable: true
            is_archived:
              type: boolean
              description: Filter on cards that are archived
              x-omitempty: true
              nullable: true
            is_watching:
              type: boolean
              description: Filter on cards that the current user is watching
              x-omitempty: true
              nullable: true
            created_from_form:
              type: boolean
              description: Filter on cards that were created from a form submission
              x-omitempty: true
              nullable: true
            start_date:
              $ref: '#/components/schemas/DateRangeFilter'
            completed_date:
              $ref: '#/components/schemas/DateRangeFilter'
            due_date:
              $ref: '#/components/schemas/DateRangeFilter'
            time_created:
              $ref: '#/components/schemas/DateRangeFilter'
            time_updated:
              $ref: '#/components/schemas/DateRangeFilter'
            include:
              $ref: '#/components/schemas/CardViewFilter'
            exclude:
              $ref: '#/components/schemas/CardViewFilter'
            sort_by:
              $ref: '#/components/schemas/ViewCardSortBy'
          nullable: true
        page_filters:
          type: object
          properties:
            is_archived:
              type: boolean
              description: Filter on pages that are archived
              x-omitempty: true
              nullable: true
            time_created:
              $ref: '#/components/schemas/DateRangeFilter'
            time_updated:
              $ref: '#/components/schemas/DateRangeFilter'
            include:
              $ref: '#/components/schemas/PageViewFilter'
            exclude:
              $ref: '#/components/schemas/PageViewFilter'
            sort_by:
              $ref: '#/components/schemas/ViewPageSortBy'
          nullable: true
    ResponseMetadata:
      type: object
      required:
        - cursor
        - count
      properties:
        cursor:
          type: string
          example: dmsjqh9d8w1hdjosjaasda
          nullable: false
        count:
          type: integer
          example: 14
          nullable: false
    Board:
      type: object
      properties:
        id:
          type: string
          example: '24'
        project_id:
          type: string
          example: '3'
        team_id:
          type: string
          example: tDsu0j19
        title:
          type: string
          example: My Board
        content:
          type: string
        icon:
          type: string
          example: shield
        color:
          type: string
        image_urls:
          type: string
        background_image:
          $ref: '#/components/schemas/Image'
        thumbnail_url:
          type: string
          example: https://s3.....com/thumbnail.png
        user_id:
          type: string
          example: u2erXoQq
        user_id_updated:
          type: string
          example: u2erXoQq
        user:
          $ref: '#/components/schemas/Actor'
        user_updated:
          $ref: '#/components/schemas/Actor'
        time_created:
          $ref: '#/components/schemas/STime'
        time_updated:
          $ref: '#/components/schemas/STime'
        members:
          type: array
          items:
            $ref: '#/components/schemas/Member'
        lists:
          type: array
          description: lists belonging to this board (if ?include=lists provided)
          items:
            $ref: '#/components/schemas/List'
        list_order:
          $ref: '#/components/schemas/Order'
        tags:
          type: array
          items:
            $ref: '#/components/schemas/Tag'
        archived:
          $ref: '#/components/schemas/Archived'
        is_public:
          type: boolean
          example: false
          x-omitempty: false
        public_settings:
          $ref: '#/components/schemas/PublicBoardSettings'
        is_watching:
          type: boolean
          example: true
          description: whether current user is a watcher of this board
          x-go-custom-tag: dynamodbav:"-"
        is_bookmarked:
          type: boolean
          example: true
          description: whether current user has this board bookmarked
          x-go-custom-tag: dynamodbav:"-"
        vcs_mapping:
          $ref: '#/components/schemas/VCSMapping'
        layout:
          $ref: '#/components/schemas/BoardLayout'
        email:
          $ref: '#/components/schemas/InboundEmail'
        webhook_notifications:
          type: array
          x-omitempty: true
          items:
            $ref: '#/components/schemas/BoardWebhookNotificationSettings'
        card_cover_enabled:
          type: boolean
          example: true
          description: whether cover images are enabled for cards in this board
        forms:
          type: array
          items:
            $ref: '#/components/schemas/Form'
          description: forms associated with this board
    Card:
      type: object
      properties:
        id:
          type: string
          example: '2700'
        type:
          type: string
          description: Type of the object being returned
          example: card
        icon:
          $ref: '#/components/schemas/Image'
        team_id:
          type: string
          example: tDsu0j19
        title:
          type: string
          example: My Card
        content:
          type: string
          example: Some card content
          maxLength: 102400
        schema:
          type: integer
          example: 1
          description: Content schema version
        collaboration:
          $ref: '#/components/schemas/Collaboration'
        status:
          $ref: '#/components/schemas/CardStatus'
        priority:
          type: integer
          example: 1
        board_id:
          type: string
          example: '12'
        board_title:
          type: string
          description: cached field
        list_id:
          type: string
          example: '41'
        list_color:
          type: string
          description: cached field
        list_title:
          type: string
          description: cached field
        sprint_id:
          type: string
          example: 4s12
        owner_id:
          type: string
          example: uR2dws11
        user_id:
          type: string
          example: uR2dws11
        user_id_updated:
          type: string
          example: u2erXoQq
        user:
          $ref: '#/components/schemas/Actor'
        user_updated:
          $ref: '#/components/schemas/Actor'
        start_date:
          $ref: '#/components/schemas/STime'
        due_date:
          $ref: '#/components/schemas/STime'
        completed_date:
          $ref: '#/components/schemas/STime'
        time_created:
          $ref: '#/components/schemas/STime'
        time_updated:
          $ref: '#/components/schemas/STime'
        members:
          type: array
          items:
            $ref: '#/components/schemas/Member'
        checklists:
          type: array
          items:
            $ref: '#/components/schemas/Checklist'
        checklist_order:
          $ref: '#/components/schemas/Order'
        checklist_item_order:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/Order'
          x-omitempty: false
        parent_card:
          $ref: '#/components/schemas/ParentCard'
        child_cards:
          type: array
          items:
            $ref: '#/components/schemas/ChildCard'
        child_card_order:
          $ref: '#/components/schemas/Order'
        linked_cards:
          type: array
          items:
            $ref: '#/components/schemas/LinkedCard'
        archived:
          $ref: '#/components/schemas/Archived'
        archived_list:
          type: boolean
          example: false
          description: whether the card is in an archived list
        archived_board:
          type: boolean
          example: false
          description: whether the card is in an archived board
        tags:
          type: array
          items:
            $ref: '#/components/schemas/Tag'
        total_comments:
          type: integer
          example: 3
          x-omitempty: false
        total_files:
          type: integer
          example: 1
          x-omitempty: false
        is_watching:
          type: boolean
          example: true
          description: whether current user is a watcher of this card
          x-go-custom-tag: dynamodbav:"-"
        is_bookmarked:
          type: boolean
          example: true
          description: whether current user has this card bookmarked
          x-go-custom-tag: dynamodbav:"-"
        project_id:
          type: string
          description: cached field
        external_links:
          type: array
          items:
            $ref: '#/components/schemas/ExternalLink'
        hints:
          type: array
          items:
            $ref: '#/components/schemas/CardHint'
        estimate:
          type: integer
          description: >-
            effort estimation enum for the card. 0 is unset, 1 is least, 5 is
            greatest. will map to different values depending on project
            settings.
          minimum: 0
          maximum: 5
        time_estimate_seconds:
          type: integer
          description: >-
            Original time estimate for the card in seconds (separate from the
            0-5 effort `estimate` field).
          x-omitempty: true
        time_remaining_seconds:
          type: integer
          description: >-
            Remaining time estimate in seconds. Auto-decremented when time
            entries are logged; can be manually adjusted via the card update
            endpoint.
          x-omitempty: true
        epic:
          $ref: '#/components/schemas/EpicBrief'
        cover_image:
          $ref: '#/components/schemas/CoverImage'
        copied_from_card_id:
          type: string
          description: ID of the card that this card was copied from
          x-omitempty: true
        form_id:
          type: string
          description: ID of the form that created this card, if any
          x-omitempty: true
        form_values:
          type: object
          description: >-
            Submitted form values keyed by form field ID. Used by the portal to
            derive dynamic submission summaries.
          additionalProperties:
            type: string
          x-omitempty: true
        suggested_branch_name:
          type: string
          description: Suggested git branch name derived from the card ID and title
          x-go-custom-tag: dynamodbav:"-"
    Page:
      type: object
      properties:
        id:
          type: string
          example: '43'
        alias_id:
          type: string
          example: 93738022-c193-494e-95a4-fc3e4346b5e1
        title:
          type: string
          example: Team Page
        font:
          $ref: '#/components/schemas/Font'
        icon:
          $ref: '#/components/schemas/Image'
        content:
          type: string
          maxLength: 102400
        schema:
          type: integer
          example: 1
        collaboration:
          $ref: '#/components/schemas/Collaboration'
        project_id:
          type: string
          example: '1'
        standalone:
          type: boolean
          example: false
          description: Whether this page is standalone and not part of a project or space.
          x-omitempty: false
        cover_image:
          $ref: '#/components/schemas/CoverImage'
        user_id:
          type: string
          example: u-dsu0j19
        user_id_updated:
          type: string
          example: u-dsu0j19
        user:
          $ref: '#/components/schemas/Actor'
        user_updated:
          $ref: '#/components/schemas/Actor'
        team_id:
          type: string
          example: teu-dsu0j19
        time_created:
          $ref: '#/components/schemas/STime'
        time_updated:
          $ref: '#/components/schemas/STime'
        members:
          type: array
          items:
            $ref: '#/components/schemas/Member'
        bookmarked:
          type: boolean
          example: false
          x-omitempty: false
        archived:
          $ref: '#/components/schemas/ArchivedPage'
        is_public:
          type: boolean
          example: false
          x-omitempty: false
        public_settings:
          $ref: '#/components/schemas/PublicPageSettings'
        total_comments:
          type: integer
          example: 3
          x-omit-empty: false
        is_watching:
          type: boolean
          example: true
          description: whether current user is a watcher of this page
        is_bookmarked:
          type: boolean
          example: true
          description: whether current user has this page bookmarked
        hide_table_of_contents:
          type: boolean
          example: true
          description: whether to show a table of contents on page
          x-omitempty: true
        hide_subpages:
          type: boolean
          example: true
          description: whether to show subpages section on page
          x-omitempty: true
    SuperthreadErrorCode:
      type: string
      description: |
        Superthread Error Code (`SEC`): A structured error code.
        Format: `SEC:{ServiceID}-{InternalErrorCode}`.


          - `SEC`: Prefix for all structured error codes.
          - `ServiceID`: First 3 characters identify the service, '000' is reserved for generic errors.
          - `InternalErrorCode`: the next (last) 5 characters define the specific error.
      pattern: ^SEC:\d{3}-\d{5}$
      example: SEC:000-00014
    STime:
      type: integer
      format: int64
      example: 1608742037016
      description: unix timestamp in seconds
      x-go-type:
        type: STime
        import:
          package: github.com/superthread-com/common/pkg/types
        hints:
          noValidation: true
          kind: primitive
    DateRangeFilter:
      type: object
      description: >-
        Expects unix time in seconds for each property but also supports date
        math such as 'now-1d/d', which reads as current time minus yesterday
        rounded down to the start of the day.
      properties:
        before:
          type: string
          description: >-
            before is inclusive, meaning that you can pass 0 to include empty
            dates
          example: now-1d
        after:
          type: string
          description: >-
            after is exclusive, meaning that you can pass 0 to exclude empty
            dates
          example: 1620997103||-2h
    BoardViewFilter:
      type: object
      properties:
        ids:
          type: array
          description: List of board ids
          x-omitempty: true
          items:
            type: string
        content:
          type: string
        projects:
          type: array
          description: List of project ids
          x-omitempty: true
          items:
            type: string
        creators:
          type: array
          description: List of user ids
          x-omitempty: true
          items:
            type: string
        members:
          type: array
          description: List of user ids
          x-omitempty: true
          items:
            type: string
    ViewBoardSortBy:
      type: object
      properties:
        field:
          type: string
          enum:
            - time_created
            - time_updated
        order_ascending:
          type: boolean
      example:
        field: time_created
        order_ascending: true
    CardViewFilter:
      type: object
      properties:
        ids:
          type: array
          description: List of card ids
          x-omitempty: true
          items:
            type: string
        content:
          type: string
        title:
          type: string
        boards:
          type: array
          description: List of board ids
          x-omitempty: true
          items:
            type: string
        estimates:
          type: array
          description: >-
            List of integers representing effort estimation enum for the card. 0
            is unset. 1 is least, 5 is greatest. will map to different values
            depending on project settings.
          x-omitempty: true
          items:
            type: integer
        lists:
          type: array
          description: List of list ids
          x-omitempty: true
          items:
            type: string
        priority:
          type: array
          description: List of integers representing priorities
          x-omitempty: true
          items:
            type: integer
        projects:
          type: array
          description: List of project ids
          x-omitempty: true
          items:
            type: string
        creators:
          type: array
          description: List of user ids
          x-omitempty: true
          items:
            type: string
        owners:
          type: array
          description: List of user ids
          x-omitempty: true
          items:
            type: string
        members:
          type: array
          description: List of user ids
          x-omitempty: true
          items:
            type: string
        statuses:
          type: array
          description: List of card statuses
          x-omitempty: true
          items:
            $ref: '#/components/schemas/CardStatus'
        external_links:
          type: array
          description: List of external link types
          x-omitempty: true
          items:
            $ref: '#/components/schemas/ExternalLinkType'
        linked_cards:
          type: array
          description: List of link card types
          x-omitempty: true
          items:
            $ref: '#/components/schemas/LinkedCardType'
        tags:
          type: array
          description: List of tag ids
          x-omitempty: true
          items:
            type: string
        parent_cards:
          type: array
          description: List of parent card ids
          x-omitempty: true
          items:
            type: string
        epics:
          type: array
          description: List of epics ids
          x-omitempty: true
          items:
            type: string
    ViewCardSortBy:
      type: object
      properties:
        field:
          type: string
          enum:
            - time_created
            - time_updated
            - status
            - priority
            - due_date
            - estimate
        order_ascending:
          type: boolean
      example:
        field: time_created
        order_ascending: true
    PageViewFilter:
      type: object
      properties:
        ids:
          type: array
          description: List of page ids
          x-omitempty: true
          items:
            type: string
        content:
          type: string
        projects:
          type: array
          description: List of project ids
          x-omitempty: true
          items:
            type: string
        creators:
          type: array
          description: List of user ids
          x-omitempty: true
          items:
            type: string
        members:
          type: array
          description: List of user ids
          x-omitempty: true
          items:
            type: string
    ViewPageSortBy:
      type: object
      properties:
        field:
          type: string
          enum:
            - time_created
            - time_updated
        order_ascending:
          type: boolean
      example:
        field: time_created
        order_ascending: true
    Image:
      type: object
      required:
        - type
        - src
      properties:
        type:
          type: string
          enum:
            - image
            - icon
            - emoji
          nullable: false
        id:
          type: string
          description: Unique identifier for the image (optional).
        src:
          type: string
          example: >-
            data:image/png;base64,
            iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==
          description: >-
            Depending on the type this can be a URL, base64 image data, emoji
            unicode or an icon name
          nullable: false
        blurhash:
          type: string
          example: LEHV6nWB2yk8pyoJadR*.7kCMdnj
          x-go-custom-tag: dynamodbav:",omitempty"
        color:
          type: string
          example: black
          x-go-custom-tag: dynamodbav:",omitempty"
        emoji:
          type: string
          example: thumbsup
          description: Emoji string ID
          x-go-custom-tag: dynamodbav:",omitempty"
    Actor:
      title: Actor
      type: object
      description: describes a user or robot that created or updated a resource
      properties:
        user_id:
          type: string
          example: uDsu0j19
          x-go-custom-tag: dynamodbav:",omitempty"
        type:
          type: string
          x-go-custom-tag: dynamodbav:",omitempty"
          example: user
          default: user
          enum:
            - user
            - robot
            - system
          nullable: false
        source:
          $ref: '#/components/schemas/ActorSource'
    Member:
      type: object
      properties:
        user_id:
          type: string
          example: u-dsu0j19
          x-go-custom-tag: diff:"user_id,identifier"
        assigned_date:
          $ref: '#/components/schemas/STime'
        role:
          $ref: '#/components/schemas/MemberRole'
    List:
      type: object
      properties:
        id:
          type: string
          example: '41'
        team_id:
          type: string
          example: tDsu0j19
        title:
          type: string
          example: My list
        content:
          type: string
        behavior:
          $ref: '#/components/schemas/ListBehavior'
        board_id:
          type: string
          example: '43'
        user_id:
          type: string
          example: u981hdaT
        user:
          $ref: '#/components/schemas/Actor'
        user_updated:
          $ref: '#/components/schemas/Actor'
        project_id:
          type: string
          example: '5'
        icon:
          type: string
          example: shield
        color:
          type: string
        card_order:
          $ref: '#/components/schemas/Order'
        total_cards:
          type: integer
          example: 5
          x-omit-empty: false
        time_created:
          $ref: '#/components/schemas/STime'
        time_updated:
          $ref: '#/components/schemas/STime'
        cards:
          type: array
          x-omitempty: true
          items:
            $ref: '#/components/schemas/Card'
        epics:
          type: array
          x-omitempty: true
          items:
            $ref: '#/components/schemas/Epic'
        archived:
          $ref: '#/components/schemas/Archived'
        is_watching:
          type: boolean
          example: true
          description: whether current user is a watcher of this list
          x-go-custom-tag: dynamodbav:"-"
        webhook_notifications:
          type: array
          x-omitempty: true
          items:
            $ref: '#/components/schemas/ListWebhookNotificationSettings'
    Order:
      type: object
      description: string array representing an order of IDs
      x-go-type:
        type: Order
        import:
          package: github.com/superthread-com/common/pkg/types
        hints:
          noValidation: true
          kind: primitive
      x-omitempty: true
      nullable: true
    Tag:
      type: object
      properties:
        id:
          type: string
          example: u-dsu0j19
          x-go-custom-tag: diff:"id,identifier"
        team_id:
          type: string
          example: u-dsu0j19
        project_id:
          type: string
          example: '5'
        name:
          type: string
          example: todo
        slug:
          type: string
          example: todo
        color:
          $ref: '#/components/schemas/TagColor'
        total_cards:
          type: integer
          description: number of cards that use this tag
          example: 17
    Archived:
      type: object
      properties:
        user_id:
          type: string
          example: uDsu0j19
        time_archived:
          $ref: '#/components/schemas/STime'
    PublicBoardSettings:
      type: object
      properties:
        url:
          type: string
          example: https://boards.superthread.com/b/1
        team_name:
          type: string
          example: Acme Company
        team_logo:
          $ref: '#/components/schemas/Image'
    VCSMapping:
      type: object
      description: >-
        Generic mapping of version control software to automate state of cards
        in boards. Specifically which list they reside in
      properties:
        pr_draft:
          type: string
          description: List ID
          example: '41'
        pr_open:
          type: string
          description: List ID
          example: '41'
        pr_review_requested:
          type: string
          description: List ID
          example: '41'
        pr_merged:
          type: string
          description: List ID
          example: '41'
        pr_closed:
          type: string
          description: List ID
          example: '41'
        branches:
          type: array
          description: >-
            A list of VCSMappingItem that defines automation for branch specific
            workflows.
          items:
            $ref: '#/components/schemas/VCSMappingItem'
    BoardLayout:
      type: string
      enum:
        - board
        - list
        - timeline
        - calendar
      example: board
      nullable: true
    InboundEmail:
      type: object
      properties:
        email:
          type: string
          example: board+engineering-board-b2L2jKl@inbound.superthread.com
        active:
          type: boolean
          example: true
    BoardWebhookNotificationSettings:
      type: object
      description: Defines a webhook notification setting for the board.
      properties:
        webhook:
          $ref: '#/components/schemas/WebhookNotification'
        options:
          type: object
          properties:
            card_created:
              type: boolean
              description: >-
                Whether to send a notification when a card is created on the
                board.
            card_moved:
              type: boolean
              description: >-
                Whether to send a notification when a card is moved to the
                board.
            card_commented:
              type: boolean
              description: >-
                Whether to send a notification when a card is commented on
                (excluding replies).
            card_due_date:
              type: boolean
              description: >-
                Whether to send a notification when a card due date is
                soon/overdue.
    Form:
      type: object
      required:
        - id
        - title
      properties:
        id:
          type: string
          example: '53'
        title:
          type: string
          example: Bug Report Form
        description:
          type: string
          example: Submit a bug report
        icon:
          $ref: '#/components/schemas/Image'
        board_id:
          type: string
          description: ID of the board this form routes submissions to
          example: '10'
          nullable: true
        folder_id:
          type: string
          description: Optional folder ID for categorizing this form
          example: folder_1
          x-omitempty: false
          nullable: true
        order:
          type: number
          format: float64
          description: >-
            Fractional sort key for the form within its folder (or the
            uncategorised bucket). Lower values appear first; values are not
            contiguous and exist only to define relative ordering.
          example: 0
          x-omitempty: false
        routing_status:
          type: string
          description: Current routing status for this form's destination board
          enum:
            - active
            - destination_missing
          x-omitempty: false
        is_portal_visible:
          type: boolean
          description: Whether this form appears in portal list views
          x-omitempty: false
        summary_field_id:
          type: string
          description: >-
            ID of the short_text or long_text field used as the portal summary
            column for submissions from this form.
        fields:
          type: array
          items:
            $ref: '#/components/schemas/FormField'
        user:
          $ref: '#/components/schemas/Actor'
        user_updated:
          $ref: '#/components/schemas/Actor'
        time_created:
          $ref: '#/components/schemas/STime'
        time_updated:
          $ref: '#/components/schemas/STime'
        is_public:
          type: boolean
          example: false
          x-omitempty: false
        public_settings:
          $ref: '#/components/schemas/PublicFormSettings'
    Collaboration:
      type: object
      properties:
        token:
          type: string
          description: Security token used to start a collaboration session
    CardStatus:
      type: string
      enum:
        - committed
        - started
        - completed
        - cancelled
      example: started
    Checklist:
      type: object
      properties:
        id:
          type: string
          example: '232'
          x-go-custom-tag: diff:"id,identifier"
        title:
          type: string
          example: My Checklist
        content:
          type: string
          example: Some description
        card_id:
          type: string
          example: '32'
        user_id:
          type: string
          example: uG2sdaOn
        time_created:
          $ref: '#/components/schemas/STime'
        time_updated:
          $ref: '#/components/schemas/STime'
        items:
          type: array
          items:
            $ref: '#/components/schemas/ChecklistItem'
    ParentCard:
      type: object
      properties:
        title:
          type: string
          example: Implement service requirements
        card_id:
          type: string
          example: '42'
          x-go-custom-tag: diff:"card_id,identifier"
        list_color:
          type: string
        status:
          $ref: '#/components/schemas/CardStatus'
    ChildCard:
      type: object
      properties:
        title:
          type: string
          example: Create illustration for upcoming holidays
        card_id:
          type: string
          example: '42'
          x-go-custom-tag: diff:"card_id,identifier"
        user_id:
          type: string
          example: us4Fsfed
        project_id:
          type: string
          example: '3'
        board_id:
          type: string
          example: '15'
        board_title:
          type: string
          example: Ideas
        list_id:
          type: string
          example: '55'
        list_title:
          type: string
          example: Done
        list_color:
          type: string
        status:
          $ref: '#/components/schemas/CardStatus'
        archived:
          $ref: '#/components/schemas/Archived'
    LinkedCard:
      type: object
      properties:
        title:
          type: string
          example: Create illustration for upcoming holidays
        card_id:
          type: string
          example: '42'
          x-go-custom-tag: diff:"card_id,identifier"
        user_id:
          type: string
          example: '42'
        project_id:
          type: string
          example: '3'
        board_id:
          type: string
          example: '15'
        board_title:
          type: string
          example: Ideas
        list_id:
          type: string
          example: list 1
        list_title:
          type: string
          example: list 1
        status:
          $ref: '#/components/schemas/CardStatus'
        archived:
          $ref: '#/components/schemas/Archived'
        linked_card_type:
          $ref: '#/components/schemas/LinkedCardType'
        icon:
          $ref: '#/components/schemas/Image'
    ExternalLink:
      type: object
      properties:
        type:
          $ref: '#/components/schemas/ExternalLinkType'
        github_pull_request:
          $ref: '#/components/schemas/GithubPullRequest'
        generic:
          $ref: '#/components/schemas/GenericExternalLink'
    CardHint:
      type: object
      properties:
        type:
          type: string
          description: defines the type of hint
          enum:
            - tag
            - relation
          example: tag
        tag:
          $ref: '#/components/schemas/CardHintTag'
        relation:
          $ref: '#/components/schemas/CardHintRelation'
    EpicBrief:
      type: object
      description: brief view of epic to be used in a card
      properties:
        id:
          type: string
          description: epic id
          example: e-123
        title:
          type: string
          description: epic title
          example: Epic Title
        icon:
          $ref: '#/components/schemas/Image'
    CoverImage:
      allOf:
        - $ref: '#/components/schemas/Image'
      properties:
        positionY:
          type: number
        object_fit:
          type: string
          enum:
            - contain
            - cover
          nullable: true
    Font:
      type: string
      enum:
        - sans
        - serif
        - mono
    ArchivedPage:
      type: object
      properties:
        user_id:
          type: string
          example: uDsu0j19
        time_archived:
          $ref: '#/components/schemas/STime'
        parent_page_id:
          type: string
    PublicPageSettings:
      type: object
      properties:
        url:
          type: string
          example: https://pages.superthread.com/t/team/p/1
        robots:
          type: array
          items:
            $ref: '#/components/schemas/MetaRobotValue'
    ExternalLinkType:
      type: string
      enum:
        - github_pull_request
        - generic
    LinkedCardType:
      type: string
      enum:
        - blocks
        - blocked_by
        - related
        - duplicates
      example: blocks
    ActorSource:
      title: ActorSource
      type: object
      description: describes the source of an actor
      properties:
        type:
          type: string
          example: oauth
          enum:
            - oauth
            - import
            - email
            - agent
        client_id:
          type: string
          x-go-custom-tag: dynamodbav:",omitempty"
          description: client ID if the resource was created via oauth2 app
          example: oczapier
        import_id:
          type: string
          x-go-custom-tag: dynamodbav:",omitempty"
          description: import ID if the resource was created by an import
          example: bf1b9f76-3f95-42fc-bd7f-050b2f5f4197
        agent_id:
          type: string
          x-go-custom-tag: dynamodbav:",omitempty"
          description: agent ID if the resource was created by an agent
          example: bf1b9f76-3f95-42fc-bd7f-050b2f5f4197
        email_addr:
          type: string
          x-go-custom-tag: dynamodbav:",omitempty"
          description: email address if the resource was created via an email
          example: somebody@example.com
        email_verified:
          type: boolean
          x-go-custom-tag: dynamodbav:",omitempty"
          description: whether the email sender was verified
          example: false
        on_behalf_of:
          type: string
          x-go-custom-tag: dynamodbav:",omitempty"
          description: >-
            User ID of the human responsible for this action. For
            trigger-initiated agent actions, this is the trigger creator. For
            mention/chat-initiated actions, this is the user who invoked the
            agent.
    MemberRole:
      type: string
      enum:
        - admin
        - member
        - viewer
    ListBehavior:
      type: string
      enum:
        - backlog
        - committed
        - started
        - completed
        - cancelled
    Epic:
      type: object
      properties:
        id:
          type: string
          example: '2700'
        type:
          type: string
          description: Type of the object being returned
          example: epic
        team_id:
          type: string
          example: tDsu0j19
        icon:
          $ref: '#/components/schemas/Image'
        title:
          type: string
          example: My Card
        schema:
          type: integer
          example: 1
          description: Content schema version
        content:
          type: string
          example: Some card content
          maxLength: 102400
        collaboration:
          $ref: '#/components/schemas/Collaboration'
        list_id:
          type: string
          example: '41'
        list_color:
          type: string
          description: cached field
        list_title:
          type: string
          description: cached field
        status:
          $ref: '#/components/schemas/CardStatus'
        priority:
          type: integer
          example: 1
        owner_id:
          type: string
          example: uR2dws11
        user_id:
          type: string
          example: uR2dws11
        user_id_updated:
          type: string
          example: u2erXoQq
        user:
          $ref: '#/components/schemas/Actor'
        user_updated:
          $ref: '#/components/schemas/Actor'
        start_date:
          $ref: '#/components/schemas/STime'
        due_date:
          $ref: '#/components/schemas/STime'
        completed_date:
          $ref: '#/components/schemas/STime'
        time_created:
          $ref: '#/components/schemas/STime'
        time_updated:
          $ref: '#/components/schemas/STime'
        health_status:
          $ref: '#/components/schemas/EpicHealthStatus'
        health_status_is_stale:
          type: boolean
          example: false
          description: Whether the project's health status is considered stale
          x-omitempty: false
        health_status_stale_period:
          type: integer
          description: >-
            Number of days without an update before the health status is
            considered stale
          default: 7
        time_health_last_updated:
          $ref: '#/components/schemas/STime'
        health_status_updated_by:
          type: string
          example: uR2dws11
          description: User ID who last updated the project's health status
        members:
          type: array
          items:
            $ref: '#/components/schemas/Member'
        checklists:
          type: array
          items:
            $ref: '#/components/schemas/Checklist'
        checklist_order:
          $ref: '#/components/schemas/Order'
        checklist_item_order:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/Order'
          x-omitempty: false
        child_cards:
          type: array
          items:
            $ref: '#/components/schemas/ChildCard'
        child_card_order:
          $ref: '#/components/schemas/Order'
        linked_cards:
          type: array
          items:
            $ref: '#/components/schemas/LinkedCard'
        archived:
          $ref: '#/components/schemas/Archived'
        archived_list:
          type: boolean
          example: false
          description: whether the epic is in an archived list
        tags:
          type: array
          items:
            $ref: '#/components/schemas/Tag'
        total_comments:
          type: integer
          example: 3
          x-omitempty: false
        total_files:
          type: integer
          example: 1
          x-omitempty: false
        is_watching:
          type: boolean
          example: true
          description: whether current user is a watcher of this epic
        external_links:
          type: array
          items:
            $ref: '#/components/schemas/ExternalLink'
        hints:
          type: array
          items:
            $ref: '#/components/schemas/CardHint'
        cover_image:
          $ref: '#/components/schemas/CoverImage'
    ListWebhookNotificationSettings:
      type: object
      description: Defines a webhook notification setting for the list.
      properties:
        webhook:
          $ref: '#/components/schemas/WebhookNotification'
        options:
          type: object
          properties:
            card_created:
              type: boolean
              description: Whether to send a notification when a card is added to the list.
    TagColor:
      type: string
      enum:
        - fog
        - slate
        - grey
        - charcoal
        - black
        - red
        - orange
        - yellow
        - green
        - ocean
        - blue
        - purple
        - pink
      example: blue
      nullable: true
    VCSMappingItem:
      type: object
      description: >-
        Generic mapping of version control software to automate state of cards
        in which list they reside in.
      properties:
        name:
          type: string
          description: Branch name to apply this VCS automation for.
          example: development
        pr_draft:
          type: string
          description: List ID
          example: '41'
        pr_open:
          type: string
          description: List ID
          example: '41'
        pr_review_requested:
          type: string
          description: List ID
          example: '41'
        pr_merged:
          type: string
          description: List ID
          example: '41'
        pr_closed:
          type: string
          description: List ID
          example: '41'
        time_created:
          $ref: '#/components/schemas/STime'
    WebhookNotification:
      type: object
      properties:
        destination_type:
          type: string
          description: >-
            The type of destination for the notification. E.g.:
            slack_channel_webhook|email etc...
          enum:
            - slack_channel_webhook
          example: slack_channel_webhook
        integration_id:
          type: string
          description: >-
            The Integration ID that holds the Webhook configuration for this
            notification type.
          example: '42'
    FormField:
      type: object
      required:
        - id
      properties:
        id:
          type: string
          description: Unique identifier for the field
          example: field_1
        type:
          type: string
          description: Type of form field
          example: short_text
          enum:
            - short_text
            - long_text
            - number
            - date
            - dropdown
            - attachments
            - checkbox
            - email
            - phone
            - link
            - card_property
            - info
        label:
          type: string
          description: Custom label for the field
          example: Your Email Address
        order:
          type: integer
          description: Order of the field in the form
          example: 1
        required:
          type: boolean
          description: Whether the field is required
          example: false
        options:
          type: array
          description: Options for field types that support multiple values
          items:
            type: string
          example:
            - Option 1
            - Option 2
            - Option 3
        placeholder:
          type: string
          description: >-
            Placeholder text for the input field (only applicable for short_text
            and long_text types)
          example: Enter your answer here...
        description:
          type: string
          description: Description for the field
          example: >-
            Please provide a detailed description of the issue you are
            experiencing.
        card_property:
          type: string
          description: >-
            Which card property this field maps to (only used when type is
            card_property). Values will be applied directly to the created card.
          example: priority
          enum:
            - priority
            - assignees
            - due_date
            - tags
        multi_select:
          type: boolean
          description: >-
            Whether the dropdown field allows multiple selections (only
            applicable for dropdown type)
          example: false
        conditions:
          type: array
          description: Array of conditions that control field visibility.
          items:
            $ref: '#/components/schemas/FormFieldCondition'
        condition_logic:
          type: string
          description: >-
            How multiple conditions are combined: 'and' requires all conditions
            to be true, 'or' requires at least one to be true. Defaults to
            'and'.
          example: and
          enum:
            - and
            - or
    PublicFormSettings:
      type: object
      properties:
        url:
          type: string
          example: https://ask.superthread.com/f/53
    ChecklistItem:
      type: object
      properties:
        id:
          type: string
          example: '4312'
          x-go-custom-tag: diff:"id,identifier"
        title:
          type: string
          example: Some title
        content:
          type: string
          example: Some description
        checklist_id:
          type: string
          example: '432'
        user_id:
          type: string
          example: u-du9saoj1
        time_created:
          $ref: '#/components/schemas/STime'
        time_updated:
          $ref: '#/components/schemas/STime'
        checked:
          type: boolean
          example: true
          x-omitempty: false
    GithubPullRequest:
      type: object
      properties:
        id:
          type: integer
          nullable: true
        number:
          type: integer
          nullable: true
        state:
          type: string
          nullable: true
        title:
          type: string
          nullable: true
        body:
          type: string
          nullable: true
        html_url:
          type: string
          nullable: true
        time_created:
          $ref: '#/components/schemas/STime'
        time_updated:
          $ref: '#/components/schemas/STime'
        time_closed:
          $ref: '#/components/schemas/STime'
        time_merged:
          $ref: '#/components/schemas/STime'
        head:
          $ref: '#/components/schemas/GithubPullRequestBranch'
        base:
          $ref: '#/components/schemas/GithubPullRequestBranch'
        draft:
          type: boolean
          nullable: true
        merged:
          type: boolean
          nullable: true
    GenericExternalLink:
      type: object
      required:
        - url
      properties:
        id:
          type: string
          description: Unique identifier for this external link (UUID)
          example: 550e8400-e29b-41d4-a716-446655440000
        url:
          type: string
        display_text:
          type: string
          nullable: true
        time_added:
          $ref: '#/components/schemas/STime'
    CardHintTag:
      type: object
      properties:
        name:
          type: string
          enum:
            - bug
            - feature
    CardHintRelation:
      type: object
      properties:
        card:
          $ref: '#/components/schemas/HintCard'
        similarity:
          type: number
          format: float64
          description: similarity score between 0 and 1
          example: 0.8
    MetaRobotValue:
      type: string
      enum:
        - all
        - index
        - follow
        - none
        - noindex
        - nofollow
        - noimageindex
        - nosnippet
        - noarchive
        - nocache
        - notranslate
    EpicHealthStatus:
      type: string
      description: The health status of an project (epic).
      enum:
        - on_track
        - at_risk
        - off_track
        - not_expected
      example: on_track
      default: on_track
    FormFieldCondition:
      type: object
      required:
        - field_id
        - operator
        - value
      properties:
        field_id:
          type: string
          description: ID of the trigger field
          example: field_1
        operator:
          type: string
          description: Comparison operator
          example: eq
          enum:
            - eq
            - neq
            - lt
            - lte
            - gt
            - gte
            - contains
        value:
          type: string
          description: The value to compare against
          example: Option 1
    GithubPullRequestBranch:
      type: object
      properties:
        label:
          type: string
          nullable: true
        ref:
          type: string
          nullable: true
    HintCard:
      type: object
      properties:
        title:
          type: string
          example: Create illustration for upcoming holidays
        card_id:
          type: string
          example: '42'
          x-go-custom-tag: diff:"card_id,identifier"
        user_id:
          type: string
          example: us4Fsfed
        project_id:
          type: string
          example: '3'
        board_id:
          type: string
          example: '15'
        board_title:
          type: string
          example: Ideas
        list_id:
          type: string
          example: '55'
        list_title:
          type: string
          example: Done
        list_color:
          type: string
        status:
          $ref: '#/components/schemas/CardStatus'
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer

````