@archastro/sdk
    Preparing search index...

    Class UserThreadResource

    Index

    Constructors

    Methods

    Constructors

    Methods

    • Create a thread for a user Creates a new thread owned by the specified user. The authenticated caller must have access to the target user's account; a 403 is returned otherwise. An automatic welcome message is sent into the thread upon creation unless skip_welcome_message is set to true. The thread is immediately visible to the owning user and any members added at creation time.

      Parameters

      • user: string

        User ID (usr_...) whose threads should be listed.

      • input: {
            skip_welcome_message?: boolean;
            thread: {
                create_legacy_agent?: boolean;
                description?: string;
                is_unlisted?: boolean;
                key?: string;
                kind?: "personal";
                members?: { id: string; type: "user" | "agent" }[];
                metadata?: Record<string, unknown>;
                muted?: boolean;
                org_id?: string;
                profile_picture?: { data?: string; filename?: string; mime_type?: string };
                settings?: { agent_enabled?: boolean | null };
                slug?: string;
                title?: string;
                visibility?: "team" | "private" | "restricted";
            };
        }

        Request body.

        • Optionalskip_welcome_message?: boolean

          When true, suppresses the automatic welcome message that is otherwise sent into the thread on creation. Defaults to false.

        • thread: {
              create_legacy_agent?: boolean;
              description?: string;
              is_unlisted?: boolean;
              key?: string;
              kind?: "personal";
              members?: { id: string; type: "user" | "agent" }[];
              metadata?: Record<string, unknown>;
              muted?: boolean;
              org_id?: string;
              profile_picture?: { data?: string; filename?: string; mime_type?: string };
              settings?: { agent_enabled?: boolean | null };
              slug?: string;
              title?: string;
              visibility?: "team" | "private" | "restricted";
          }

          Attributes for the new thread. See ThreadCreateParams for the full set of accepted fields.

      Returns Promise<Thread>

      The newly created thread object.

    • List threads for a user Returns all threads visible to the specified user. The authenticated caller must have access to the target user's account; a 403 is returned otherwise. Pass one or more agent IDs to narrow results to threads where at least one of the listed agents is also a member — useful for displaying every thread a user shares with a particular agent. Pass one or more filter objects to narrow results by thread metadata key/value pairs. Both narrowings may be combined in a single request. Results are returned as a flat array; no cursor-based pagination is applied. Threads are ordered with default threads first, then by most recent activity (newest first), each carrying a last_activity timestamp.

      Parameters

      • user: string

        User ID (usr_...) whose threads should be listed.

      • Optionalparams: { agent?: string[]; filter?: { key: string; type: string; value: string }[] }

        Query parameters.

        • Optionalagent?: string[]

          Array of agent user IDs (usr_...). When provided, only threads where at least one of the listed agents is also a member are returned. Omit or pass an empty array to return all threads regardless of agent membership.

        • Optionalfilter?: { key: string; type: string; value: string }[]

          Array of metadata filter objects. Each filter matches threads whose metadata map contains the specified key/value pair. All filters must match (logical AND). Omit to return threads regardless of metadata.

      Returns Promise<
          {
              data: {
                  agent_user?: string
                  | null;
                  created_at?: string;
                  creator?:
                      | string
                      | {
                          alias?: string
                          | null;
                          app?: string | null;
                          app_name?: string | null;
                          created_by_agent_user?: string | null;
                          created_by_developer?: string | null;
                          created_by_org?: string | null;
                          created_by_team?: string | null;
                          created_by_user?: string | null;
                          email?: string | null;
                          id: string;
                          is_system_user?: boolean;
                          metadata?: Record<string, unknown>;
                          name?: string | null;
                          org?: string | null;
                          org_name?: string | null;
                          org_role?: string | null;
                          org_slug?: string | null;
                          sandbox?: string | null;
                          sandbox_name?: string | null;
                      }
                      | null;
                  description?: string
                  | null;
                  id: string;
                  is_channel?: boolean;
                  is_default?: boolean;
                  is_transient?: boolean;
                  is_unlisted?: boolean;
                  key?: string | null;
                  kind?: string | null;
                  last_activity?: string | null;
                  last_message_preview?: string | null;
                  last_message_sender?: string | null;
                  metadata?: Record<string, unknown> | null;
                  muted?: boolean;
                  org?: string | null;
                  parent_message?:
                      | {
                          acl?: | {
                              add?: { actions: ...; principal?: ...; principal_type: ... }[];
                              grants?: { actions: ...; principal?: ...; principal_type: ... }[];
                              remove?: { principal?: ...; principal_type: ... }[];
                          }
                          | null;
                          actors?: {
                              alias?: string
                              | null;
                              id?: string | null;
                              name?: string | null;
                              profile_picture?:
                                  | {
                                      file?: ...;
                                      height?: ...;
                                      media?: ...;
                                      mime_type?: ...;
                                      refresh_url?: ...;
                                      url?: ...;
                                      width?: ...;
                                  }
                                  | null;
                          }[];
                          agent?: string
                          | null;
                          agent_mode?: "cli" | "embedded" | null;
                          attachments?: {
                              content_type?: string | null;
                              description?: string | null;
                              filename?: string | null;
                              height?: number | null;
                              id: string;
                              image_height?: number | null;
                              image_source?:
                                  | {
                                      file?: ...;
                                      height?: ...;
                                      media?: ...;
                                      mime_type?: ...;
                                      refresh_url?: ...;
                                      url?: ...;
                                      width?: ...;
                                  }
                                  | null;
                              image_url?: string
                              | null;
                              image_width?: number | null;
                              media_type?: string;
                              name?: string | null;
                              object?: Record<(...), (...)>;
                              title?: string | null;
                              type: string;
                              url?: string | null;
                              variants?: (...)[];
                              version?: number | null;
                              width?: number | null;
                          }[];
                          branched_thread?: string
                          | null;
                          content?: string | null;
                          context?: {
                              attributes?: Record<(...), (...)>;
                              content?: string | null;
                              title?: string | null;
                              type: string;
                          }[];
                          created_at?: string;
                          has_replies?: boolean;
                          id: string;
                          idempotency_key?: string
                          | null;
                          is_deleted?: boolean;
                          legacy_agent?: string | null;
                          metadata?: Record<string, unknown>;
                          org?: string | null;
                          reactions?: {
                              payload?: Record<(...), (...)>;
                              type: string;
                              user?: string;
                          }[];
                          rendering_mode?: string
                          | null;
                          replies?: Record<string, unknown>[];
                          replies_after_cursor?: string | null;
                          replies_before_cursor?: string | null;
                          reply_count?: number;
                          reply_to?: Record<string, unknown> | null;
                          root_message_id?: string | null;
                          sandbox?: string | null;
                          team?: string | null;
                          thread?: string;
                          type?: string | null;
                          user?:
                              | string
                              | {
                                  alias?: string
                                  | null;
                                  app?: string | null;
                                  app_name?: string | null;
                                  created_by_agent_user?: string | null;
                                  created_by_developer?: string | null;
                                  created_by_org?: string | null;
                                  created_by_team?: string | null;
                                  created_by_user?: string | null;
                                  email?: string | null;
                                  id: string;
                                  is_system_user?: boolean;
                                  metadata?: Record<string, unknown>;
                                  name?: string | null;
                                  org?: string | null;
                                  org_name?: string | null;
                                  org_role?: string | null;
                                  org_slug?: string | null;
                                  sandbox?: string | null;
                                  sandbox_name?: string | null;
                              }
                              | null;
                          visibility?: "default"
                          | "private";
                      }
                      | null;
                  participant?: string[];
                  participants?: {
                      alias?: string
                      | null;
                      app?: string | null;
                      app_name?: string | null;
                      created_by_agent_user?: string | null;
                      created_by_developer?: string | null;
                      created_by_org?: string | null;
                      created_by_team?: string | null;
                      created_by_user?: string | null;
                      email?: string | null;
                      id: string;
                      is_system_user?: boolean;
                      metadata?: Record<string, unknown>;
                      name?: string | null;
                      org?: string | null;
                      org_name?: string | null;
                      org_role?: string | null;
                      org_slug?: string | null;
                      sandbox?: string | null;
                      sandbox_name?: string | null;
                  }[];
                  participating_actor?: string[];
                  participating_agents?: | {
                      acl?: { add?: (...)[]; grants?: (...)[]; remove?: (...)[] }
                      | null;
                      app?: string;
                      created_at?: string;
                      default_model?: string | null;
                      description?: string | null;
                      email?: string | null;
                      id: string;
                      identity?: string | null;
                      last_applied_template_config?: string | null;
                      lookup_key?: string | null;
                      metadata?: Record<string, unknown>;
                      name?: string;
                      org?: string | null;
                      org_name?: string | null;
                      originator?: string | null;
                      phone_number?: string | null;
                      sandbox?: string | null;
                      source_solution?:
                          | {
                              current_solution?: {
                                  category_keys?: ...;
                                  created_at?: ...;
                                  description?: ...;
                                  events?: ...;
                                  id: ...;
                                  image_url?: ...;
                                  installed_config_ids: ...;
                                  kind: ...;
                                  latest_solution?: ...;
                                  latest_version?: ...;
                                  lookup_key?: ...;
                                  metadata?: ...;
                                  name?: ...;
                                  org?: ...;
                                  org_logo?: ...;
                                  org_name?: ...;
                                  org_slug?: ...;
                                  owners: ...;
                                  readme_url?: ...;
                                  screenshot_urls?: ...;
                                  solution_id?: ...;
                                  solution_version?: ...;
                                  tag_keys?: ...;
                                  template_kind?: ...;
                                  templates: ...;
                                  updated_at?: ...;
                                  upgrade_available: ...;
                                  virtual_path?: ...;
                              };
                              solution: {
                                  category_keys?: (...)
                                  | (...);
                                  created_at?: (...) | (...);
                                  description?: (...) | (...) | (...);
                                  events?: (...) | (...);
                                  id: string;
                                  image_url?: (...) | (...) | (...);
                                  installed_config_ids: (...)[];
                                  kind: string;
                                  latest_solution?: (...) | (...) | (...);
                                  latest_version?: (...) | (...) | (...);
                                  lookup_key?: (...) | (...) | (...);
                                  metadata?: (...) | (...);
                                  name?: (...) | (...) | (...);
                                  org?: (...) | (...) | (...);
                                  org_logo?: (...) | (...) | (...);
                                  org_name?: (...) | (...) | (...);
                                  org_slug?: (...) | (...) | (...);
                                  owners: (...)[];
                                  readme_url?: (...) | (...) | (...);
                                  screenshot_urls?: (...) | (...);
                                  solution_id?: (...) | (...) | (...);
                                  solution_version?: (...) | (...) | (...);
                                  tag_keys?: (...) | (...);
                                  template_kind?: (...) | (...) | (...);
                                  templates: (...)[];
                                  updated_at?: (...) | (...);
                                  upgrade_available: boolean;
                                  virtual_path?: (...) | (...) | (...);
                              };
                              template: {
                                  created_at?: (...)
                                  | (...);
                                  description?: (...) | (...) | (...);
                                  display_name?: (...) | (...) | (...);
                                  id: string;
                                  kind: string;
                                  lookup_key?: (...) | (...) | (...);
                                  name?: (...) | (...) | (...);
                                  updated_at?: (...) | (...);
                                  virtual_path?: (...) | (...) | (...);
                              };
                          }
                          | null;
                      team?: string
                      | null;
                      template_upgrade_available?: boolean | null;
                      updated_at?: string;
                      user?: string | null;
                  }[]
                  | null;
                  role?: string
                  | null;
                  sandbox?: string | null;
                  settings?: { agent_enabled?: boolean | null };
                  slug?: string | null;
                  sub_threads?: Record<string, unknown>[] | null;
                  tags?: string[];
                  team?: string | null;
                  title?: string | null;
                  ttl?: string | null;
                  unread_count?: number | null;
                  updated_at?: string;
                  user?: string | null;
                  visibility: "team" | "private" | "restricted";
              }[];
          },
      >

      Successful response