# Get Tool Output Source: https://docs.heyhumm.ai/api-reference/cache/get-tool-output https://analyst.heyhumm.ai/api/openapi.json get /cache/tool-output/{cache_key} Retrieve cached tool output data by cache key. This endpoint allows users to fetch complete, untruncated tool outputs that were cached during tool execution. Requires READ permission on ANALYSIS resources. # Apply Command Editor Draft Route Source: https://docs.heyhumm.ai/api-reference/commands/apply-command-editor-draft-route https://analyst.heyhumm.ai/api/openapi.json post /commands/{command_id}/editor/draft/{draft_id}/apply Apply an approved command editor draft. # Archive Command Editor Thread Source: https://docs.heyhumm.ai/api-reference/commands/archive-command-editor-thread https://analyst.heyhumm.ai/api/openapi.json post /commands/{command_id}/editor/thread/{thread_id}/archive Archive a command editor workflow thread. # Create Command Source: https://docs.heyhumm.ai/api-reference/commands/create-command https://analyst.heyhumm.ai/api/openapi.json post /commands Create a new command. Requires CREATE permission on ANALYSIS resources. # Create Command Editor Thread Source: https://docs.heyhumm.ai/api-reference/commands/create-command-editor-thread https://analyst.heyhumm.ai/api/openapi.json post /commands/{command_id}/editor/thread Create a persisted command editor workflow thread. # Delete Command Source: https://docs.heyhumm.ai/api-reference/commands/delete-command https://analyst.heyhumm.ai/api/openapi.json delete /commands/{command_id} Delete a command. Requires DELETE permission on ANALYSIS resources. # Get Command Source: https://docs.heyhumm.ai/api-reference/commands/get-command https://analyst.heyhumm.ai/api/openapi.json get /commands/{command_id} Get a single command by ID. Requires READ permission on ANALYSIS resources. # Get Command Editor Draft Route Source: https://docs.heyhumm.ai/api-reference/commands/get-command-editor-draft-route https://analyst.heyhumm.ai/api/openapi.json get /commands/{command_id}/editor/draft/{draft_id} Return the latest saved command editor draft. # List Command Editor Threads Source: https://docs.heyhumm.ai/api-reference/commands/list-command-editor-threads https://analyst.heyhumm.ai/api/openapi.json get /commands/{command_id}/editor/thread List persisted command editor workflow threads for this command. # List Command Versions Source: https://docs.heyhumm.ai/api-reference/commands/list-command-versions https://analyst.heyhumm.ai/api/openapi.json get /commands/{command_id}/history List historical versions for a command. Requires READ permission on ANALYSIS resources. # List Commands Source: https://docs.heyhumm.ai/api-reference/commands/list-commands https://analyst.heyhumm.ai/api/openapi.json get /commands List commands for an organization. Requires READ permission on ANALYSIS resources. # Post Command Editor Draft Turn Source: https://docs.heyhumm.ai/api-reference/commands/post-command-editor-draft-turn https://analyst.heyhumm.ai/api/openapi.json post /commands/{command_id}/editor/draft/turn Create or revise a command edit draft without mutating the command. # Post Command Editor Draft Turn Stream Source: https://docs.heyhumm.ai/api-reference/commands/post-command-editor-draft-turn-stream https://analyst.heyhumm.ai/api/openapi.json post /commands/{command_id}/editor/draft/turn/stream Stream a command editor draft turn for assistant-ui. # Restore Command Version Source: https://docs.heyhumm.ai/api-reference/commands/restore-command-version https://analyst.heyhumm.ai/api/openapi.json post /commands/{command_id}/history/{version_id}/restore Restore a command from a historical version snapshot. Requires UPDATE permission on ANALYSIS resources. # Update Command Source: https://docs.heyhumm.ai/api-reference/commands/update-command https://analyst.heyhumm.ai/api/openapi.json put /commands/{command_id} Update a command (name and/or content). Requires UPDATE permission on ANALYSIS resources. # Create Context Source Source: https://docs.heyhumm.ai/api-reference/context-sources/create-context-source https://config.heyhumm.ai/api/openapi.json post /api/context-source # Create Github Config Source: https://docs.heyhumm.ai/api-reference/context-sources/create-github-config https://config.heyhumm.ai/api/openapi.json post /api/context-source/{context_source_id}/config # Delete Context Source Source: https://docs.heyhumm.ai/api-reference/context-sources/delete-context-source https://config.heyhumm.ai/api/openapi.json delete /api/context-source/{context_source_id} # Delete Github Config Source: https://docs.heyhumm.ai/api-reference/context-sources/delete-github-config https://config.heyhumm.ai/api/openapi.json delete /api/context-source/{context_source_id}/config/{config_id} # Get Context Source Source: https://docs.heyhumm.ai/api-reference/context-sources/get-context-source https://config.heyhumm.ai/api/openapi.json get /api/context-source/{context_source_id} # Get Context Sources Source: https://docs.heyhumm.ai/api-reference/context-sources/get-context-sources https://config.heyhumm.ai/api/openapi.json get /api/context-source # Get Github Config Source: https://docs.heyhumm.ai/api-reference/context-sources/get-github-config https://config.heyhumm.ai/api/openapi.json get /api/context-source/{context_source_id}/config/{config_id} # Get Github Configs Source: https://docs.heyhumm.ai/api-reference/context-sources/get-github-configs https://config.heyhumm.ai/api/openapi.json get /api/context-source/{context_source_id}/config # Reembed Context Source Source: https://docs.heyhumm.ai/api-reference/context-sources/reembed-context-source https://config.heyhumm.ai/api/openapi.json post /api/context-source/{context_source_id}/reembed # Update Context Source Source: https://docs.heyhumm.ai/api-reference/context-sources/update-context-source https://config.heyhumm.ai/api/openapi.json put /api/context-source/{context_source_id} # Update Github Config Source: https://docs.heyhumm.ai/api-reference/context-sources/update-github-config https://config.heyhumm.ai/api/openapi.json put /api/context-source/{context_source_id}/config/{config_id} # Bulk Update Entity Link Status Source: https://docs.heyhumm.ai/api-reference/entity-links/bulk-update-entity-link-status https://config.heyhumm.ai/api/openapi.json post /api/organization/{organization_id}/entity-links/bulk-status Bulk update status (and optional confidence_score) for multiple entity links. # Create Entity Link Source: https://docs.heyhumm.ai/api-reference/entity-links/create-entity-link https://config.heyhumm.ai/api/openapi.json post /api/organization/{organization_id}/entity-links Create a new cross-source entity link. # Get Entity Link Source: https://docs.heyhumm.ai/api-reference/entity-links/get-entity-link https://config.heyhumm.ai/api/openapi.json get /api/organization/{organization_id}/entity-links/{entity_link_id} Get a specific entity link by ID. # List Entity Links Source: https://docs.heyhumm.ai/api-reference/entity-links/list-entity-links https://config.heyhumm.ai/api/openapi.json get /api/organization/{organization_id}/entity-links List entity links for an organization. # Update Entity Link Source: https://docs.heyhumm.ai/api-reference/entity-links/update-entity-link https://config.heyhumm.ai/api/openapi.json put /api/organization/{organization_id}/entity-links/{entity_link_id} Update status, confidence_score, or evidence for an entity link. # Create Feedback Source: https://docs.heyhumm.ai/api-reference/feedback/create-feedback https://analyst.heyhumm.ai/api/openapi.json post /feedback Create new feedback for a thread. Supports three types of feedback: 1. Thread-level: Provide only thread_id (feedback on entire conversation) 2. Run-level: Provide thread_id + langsmith_run_id (feedback on specific step) 3. Trace-level: Provide thread_id + langsmith_trace_id (feedback on specific trace) Requires CREATE permission on ANALYSIS resources. # Delete Feedback Source: https://docs.heyhumm.ai/api-reference/feedback/delete-feedback https://analyst.heyhumm.ai/api/openapi.json delete /feedback/{feedback_id} Delete a feedback entry. Requires DELETE permission on ANALYSIS resources. # Get Feedback By Id Source: https://docs.heyhumm.ai/api-reference/feedback/get-feedback-by-id https://analyst.heyhumm.ai/api/openapi.json get /feedback/{feedback_id} Get a specific feedback entry by ID. Requires READ permission on ANALYSIS resources. # Get Thread Run Ids Source: https://docs.heyhumm.ai/api-reference/feedback/get-thread-run-ids https://analyst.heyhumm.ai/api/openapi.json get /feedback/thread/{thread_id}/run-ids Get all available run IDs for a thread. Requires READ permission on ANALYSIS resources. # Update Feedback Source: https://docs.heyhumm.ai/api-reference/feedback/update-feedback https://analyst.heyhumm.ai/api/openapi.json put /feedback/{feedback_id} Update a feedback entry. Requires UPDATE permission on ANALYSIS resources. # Bulk Update Integration Source Relationship Status Source: https://docs.heyhumm.ai/api-reference/integration-sources/bulk-update-integration-source-relationship-status https://config.heyhumm.ai/api/openapi.json post /api/integration-sources/relationships/bulk-status Bulk update status (and optional score/evidence) for multiple relationships. # Bulk Update Saas Association Status Source: https://docs.heyhumm.ai/api-reference/integration-sources/bulk-update-saas-association-status https://config.heyhumm.ai/api/openapi.json post /api/integration-sources/{source_id}/saas-associations/bulk-status Bulk update status (and optional score/evidence) for SaaS associations. # Create Integration Source Source: https://docs.heyhumm.ai/api-reference/integration-sources/create-integration-source https://config.heyhumm.ai/api/openapi.json post /api/integration-sources Create a new integration source. # Create Integration Source Column Source: https://docs.heyhumm.ai/api-reference/integration-sources/create-integration-source-column https://config.heyhumm.ai/api/openapi.json post /api/integration-sources/{source_id}/databases/{database_id}/schemas/{schema_id}/tables/{table_id}/columns Create a new column for an integration source table. # Create Integration Source Database Source: https://docs.heyhumm.ai/api-reference/integration-sources/create-integration-source-database https://config.heyhumm.ai/api/openapi.json post /api/integration-sources/{source_id}/databases Create a new database for an integration source. # Create Integration Source Relationship Source: https://docs.heyhumm.ai/api-reference/integration-sources/create-integration-source-relationship https://config.heyhumm.ai/api/openapi.json post /api/integration-sources/relationships Create a relationship between integration source tables. # Create Integration Source Schema Source: https://docs.heyhumm.ai/api-reference/integration-sources/create-integration-source-schema https://config.heyhumm.ai/api/openapi.json post /api/integration-sources/{source_id}/databases/{database_id}/schemas Create a new schema for an integration source database. # Create Integration Source Table Source: https://docs.heyhumm.ai/api-reference/integration-sources/create-integration-source-table https://config.heyhumm.ai/api/openapi.json post /api/integration-sources/{source_id}/databases/{database_id}/schemas/{schema_id}/tables Create a new table for an integration source schema. # Create Saas Association Source: https://docs.heyhumm.ai/api-reference/integration-sources/create-saas-association https://config.heyhumm.ai/api/openapi.json post /api/integration-sources/{source_id}/saas-associations Create a new SaaS association for an integration source. # Create Saas Field Source: https://docs.heyhumm.ai/api-reference/integration-sources/create-saas-field https://config.heyhumm.ai/api/openapi.json post /api/integration-sources/{source_id}/saas-objects/{object_id}/saas-fields Create a new SaaS field for a SaaS object. # Create Saas Object Source: https://docs.heyhumm.ai/api-reference/integration-sources/create-saas-object https://config.heyhumm.ai/api/openapi.json post /api/integration-sources/{source_id}/saas-objects Create a new SaaS object for an integration source. # Delete Integration Source Source: https://docs.heyhumm.ai/api-reference/integration-sources/delete-integration-source https://config.heyhumm.ai/api/openapi.json delete /api/integration-sources/{source_id} Delete an integration source. # Delete Integration Source Database Source: https://docs.heyhumm.ai/api-reference/integration-sources/delete-integration-source-database https://config.heyhumm.ai/api/openapi.json delete /api/integration-sources/{source_id}/databases/{database_id} Delete an integration source database. # Delete Integration Source Schema Source: https://docs.heyhumm.ai/api-reference/integration-sources/delete-integration-source-schema https://config.heyhumm.ai/api/openapi.json delete /api/integration-sources/{source_id}/databases/{database_id}/schemas/{schema_id} Delete an integration source schema. # Delete Integration Source Table Source: https://docs.heyhumm.ai/api-reference/integration-sources/delete-integration-source-table https://config.heyhumm.ai/api/openapi.json delete /api/integration-sources/{source_id}/databases/{database_id}/schemas/{schema_id}/tables/{table_id} Delete an integration source table. # Delete Saas Association Source: https://docs.heyhumm.ai/api-reference/integration-sources/delete-saas-association https://config.heyhumm.ai/api/openapi.json delete /api/integration-sources/{source_id}/saas-associations/{association_id} Delete a SaaS association from an integration source. # Delete Saas Field Source: https://docs.heyhumm.ai/api-reference/integration-sources/delete-saas-field https://config.heyhumm.ai/api/openapi.json delete /api/integration-sources/{source_id}/saas-objects/{object_id}/saas-fields/{field_id} Delete a SaaS field. # Delete Saas Object Source: https://docs.heyhumm.ai/api-reference/integration-sources/delete-saas-object https://config.heyhumm.ai/api/openapi.json delete /api/integration-sources/{source_id}/saas-objects/{object_id} Delete a SaaS object and all its fields. # Generate Column Description Source: https://docs.heyhumm.ai/api-reference/integration-sources/generate-column-description https://config.heyhumm.ai/api/openapi.json post /api/integration-sources/{source_id}/databases/{database_id}/schemas/{schema_id}/tables/{table_id}/columns/{column_id}/generate-description Generate an AI-powered description for a single column. Analyzes column metadata and sample data to generate a concise, agent-optimized description. # Generate Database Description Source: https://docs.heyhumm.ai/api-reference/integration-sources/generate-database-description https://config.heyhumm.ai/api/openapi.json post /api/integration-sources/{source_id}/databases/{database_id}/generate-description Generate an AI-powered description for a single database. Analyzes database metadata, schema descriptions, and organization to generate a concise, agent-optimized description. Optionally generates missing schema/table/column descriptions first (cascade_schemas=True). # Generate Database Schema Descriptions Source: https://docs.heyhumm.ai/api-reference/integration-sources/generate-database-schema-descriptions https://config.heyhumm.ai/api/openapi.json post /api/integration-sources/{source_id}/databases/{database_id}/generate-schema-descriptions Generate AI-powered descriptions for all schemas in a database. Analyzes schema metadata, table descriptions, and relationships to generate concise, agent-optimized descriptions for schemas that don't have them (or all schemas if overwrite_existing is True). Optionally generates missing table/column descriptions first (cascade_tables=True). # Generate Schema Description Source: https://docs.heyhumm.ai/api-reference/integration-sources/generate-schema-description https://config.heyhumm.ai/api/openapi.json post /api/integration-sources/{source_id}/databases/{database_id}/schemas/{schema_id}/generate-description Generate an AI-powered description for a single schema. Analyzes schema metadata, table descriptions, and relationships to generate a concise, agent-optimized description. Optionally generates missing table/column descriptions first (cascade_tables=True). # Generate Schema Table Descriptions Source: https://docs.heyhumm.ai/api-reference/integration-sources/generate-schema-table-descriptions https://config.heyhumm.ai/api/openapi.json post /api/integration-sources/{source_id}/databases/{database_id}/schemas/{schema_id}/generate-table-descriptions Generate AI-powered descriptions for all tables in a schema. Analyzes table metadata, column descriptions, and relationships to generate concise, agent-optimized descriptions for tables that don't have them (or all tables if overwrite_existing is True). Optionally generates missing column descriptions first (cascade_columns=True). # Generate Source Database Descriptions Source: https://docs.heyhumm.ai/api-reference/integration-sources/generate-source-database-descriptions https://config.heyhumm.ai/api/openapi.json post /api/integration-sources/{source_id}/generate-database-descriptions Generate AI-powered descriptions for all databases in a source. Analyzes database metadata, schema descriptions, and organization to generate concise, agent-optimized descriptions for databases that don't have them (or all databases if overwrite_existing is True). Optionally generates missing schema/table/column descriptions first (cascade_schemas=True). # Generate Source Description Source: https://docs.heyhumm.ai/api-reference/integration-sources/generate-source-description https://config.heyhumm.ai/api/openapi.json post /api/integration-sources/{source_id}/generate-description Generate an AI-powered description for an integration source. Analyzes source metadata, database descriptions, and integration type to generate a concise, agent-optimized description. Optionally generates missing database/schema/table/column descriptions first (cascade_databases=True). # Generate Table Column Descriptions Source: https://docs.heyhumm.ai/api-reference/integration-sources/generate-table-column-descriptions https://config.heyhumm.ai/api/openapi.json post /api/integration-sources/{source_id}/databases/{database_id}/schemas/{schema_id}/tables/{table_id}/generate-column-descriptions Generate AI-powered descriptions for all columns in a table. Analyzes column metadata and sample data to generate concise, agent-optimized descriptions for columns that don't have them (or all columns if overwrite_existing is True). # Generate Table Description Source: https://docs.heyhumm.ai/api-reference/integration-sources/generate-table-description https://config.heyhumm.ai/api/openapi.json post /api/integration-sources/{source_id}/databases/{database_id}/schemas/{schema_id}/tables/{table_id}/generate-description Generate an AI-powered description for a single table. Analyzes table metadata, column descriptions, and relationships to generate a concise, agent-optimized description. Optionally generates missing column descriptions first (cascade_columns=True). # Get Available Tools Source: https://docs.heyhumm.ai/api-reference/integration-sources/get-available-tools https://config.heyhumm.ai/api/openapi.json get /api/integration-sources/{source_id}/available-tools Get all available tools for an integration source with their enablement status. Returns both Composio essential tools and custom tools from the template, along with whether each tool is currently enabled. # Get Connector Fields Source: https://docs.heyhumm.ai/api-reference/integration-sources/get-connector-fields https://config.heyhumm.ai/api/openapi.json get /api/integration-sources/connector-types/{connector_type}/fields Get required fields and metadata for a specific connector type. # Get Field Options Source: https://docs.heyhumm.ai/api-reference/integration-sources/get-field-options https://config.heyhumm.ai/api/openapi.json get /api/integration-sources/{source_id}/fields/{field_name}/options Fetch dynamic options for a configuration field using the connector's tools. This endpoint uses the field's options_source configuration to execute a connector tool and transform the results into options for select/multiselect fields. # Get Integration Source Source: https://docs.heyhumm.ai/api-reference/integration-sources/get-integration-source https://config.heyhumm.ai/api/openapi.json get /api/integration-sources/{source_id} Get a specific integration source. # Get Saas Catalog Source: https://docs.heyhumm.ai/api-reference/integration-sources/get-saas-catalog https://config.heyhumm.ai/api/openapi.json get /api/integration-sources/{source_id}/saas-catalog Get SaaS catalog with objects and their fields for an integration source. # Get Saas Field Source: https://docs.heyhumm.ai/api-reference/integration-sources/get-saas-field https://config.heyhumm.ai/api/openapi.json get /api/integration-sources/{source_id}/saas-objects/{object_id}/saas-fields/{field_id} Get a specific SaaS field. # Get Saas Object Source: https://docs.heyhumm.ai/api-reference/integration-sources/get-saas-object https://config.heyhumm.ai/api/openapi.json get /api/integration-sources/{source_id}/saas-objects/{object_id} Get a specific SaaS object. # Get Sync Status Source: https://docs.heyhumm.ai/api-reference/integration-sources/get-sync-status https://config.heyhumm.ai/api/openapi.json get /api/integration-sources/{source_id}/sync-status Get Airbyte sync status for an integration source. When status is 'running' or 'configuring', performs a live check against the Airbyte API to detect completion (the background poller may not have run yet). # List All Integration Source Columns Source: https://docs.heyhumm.ai/api-reference/integration-sources/list-all-integration-source-columns https://config.heyhumm.ai/api/openapi.json get /api/integration-sources/{source_id}/columns List all columns for an integration source across all tables. AIDEV-NOTE: bulk-columns-endpoint; Single query to get all columns, avoids N+1 problem when collecting point IDs for embedding operations. Returns columns with their table_id for grouping. Inactive databases, schemas, and tables are always excluded. Use active_only=True (default) to also exclude inactive columns. # List Connector Types Source: https://docs.heyhumm.ai/api-reference/integration-sources/list-connector-types https://config.heyhumm.ai/api/openapi.json get /api/integration-sources/connector-types Get all available connector types with their metadata from the dynamic registry. # List Integration Source Columns Source: https://docs.heyhumm.ai/api-reference/integration-sources/list-integration-source-columns https://config.heyhumm.ai/api/openapi.json get /api/integration-sources/{source_id}/databases/{database_id}/schemas/{schema_id}/tables/{table_id}/columns List all columns for an integration source table. # List Integration Source Databases Source: https://docs.heyhumm.ai/api-reference/integration-sources/list-integration-source-databases https://config.heyhumm.ai/api/openapi.json get /api/integration-sources/{source_id}/databases List all databases for an integration source. # List Integration Source Relationships Source: https://docs.heyhumm.ai/api-reference/integration-sources/list-integration-source-relationships https://config.heyhumm.ai/api/openapi.json get /api/integration-sources/{integration_source_id}/relationships List relationships for a given integration source. # List Integration Source Schemas Source: https://docs.heyhumm.ai/api-reference/integration-sources/list-integration-source-schemas https://config.heyhumm.ai/api/openapi.json get /api/integration-sources/{source_id}/databases/{database_id}/schemas List all schemas for an integration source database. # List Integration Source Tables Source: https://docs.heyhumm.ai/api-reference/integration-sources/list-integration-source-tables https://config.heyhumm.ai/api/openapi.json get /api/integration-sources/{source_id}/databases/{database_id}/schemas/{schema_id}/tables List all tables for an integration source schema. # List Integration Sources Source: https://docs.heyhumm.ai/api-reference/integration-sources/list-integration-sources https://config.heyhumm.ai/api/openapi.json get /api/integration-sources List all integration sources accessible to the user. # List Saas Associations Source: https://docs.heyhumm.ai/api-reference/integration-sources/list-saas-associations https://config.heyhumm.ai/api/openapi.json get /api/integration-sources/{source_id}/saas-associations List all SaaS associations for an integration source, optionally filtered by from/to object IDs. # List Saas Fields Source: https://docs.heyhumm.ai/api-reference/integration-sources/list-saas-fields https://config.heyhumm.ai/api/openapi.json get /api/integration-sources/{source_id}/saas-objects/{object_id}/saas-fields List all SaaS fields for a SaaS object. # List Saas Objects Source: https://docs.heyhumm.ai/api-reference/integration-sources/list-saas-objects https://config.heyhumm.ai/api/openapi.json get /api/integration-sources/{source_id}/saas-objects List all SaaS objects for an integration source. # Sync Integration Source Database Descriptions Source: https://docs.heyhumm.ai/api-reference/integration-sources/sync-integration-source-database-descriptions https://config.heyhumm.ai/api/openapi.json post /api/integration-sources/{source_id}/databases/{database_id}/sync-descriptions Queue jobs to sync descriptions for all schemas in an integration source database. # Sync Integration Source Descriptions Source: https://docs.heyhumm.ai/api-reference/integration-sources/sync-integration-source-descriptions https://config.heyhumm.ai/api/openapi.json post /api/integration-sources/{source_id}/databases/{database_id}/schemas/{schema_id}/sync-descriptions Queue a job to sync descriptions for an integration source schema. # Sync Saas Integration Source Descriptions Source: https://docs.heyhumm.ai/api-reference/integration-sources/sync-saas-integration-source-descriptions https://config.heyhumm.ai/api/openapi.json post /api/integration-sources/{source_id}/saas-sync-descriptions Sync descriptions for SaaS objects and fields in an integration source. This endpoint triggers description generation for SaaS objects and their fields using AI inference from sample data. Options: - force_regenerate: If true, regenerates descriptions even for fields that already have them # Test Integration Connection Source: https://docs.heyhumm.ai/api-reference/integration-sources/test-integration-connection https://config.heyhumm.ai/api/openapi.json post /api/integration-sources/{source_id}/test Queue a non-blocking connection test for an integration source. # Trigger Integration Source Database Introspection Source: https://docs.heyhumm.ai/api-reference/integration-sources/trigger-integration-source-database-introspection https://config.heyhumm.ai/api/openapi.json post /api/integration-sources/{source_id}/databases/{database_id}/introspect Trigger introspection for a specific database within an integration source. This will queue a background job to discover and update the schema hierarchy for only the specified database: - Schemas within the database - Tables within those schemas - Columns within those tables - Relationships within the database Args: source_id: Integration source ID database_id: Database ID to introspect force_refresh: Force refresh even if recently introspected # Trigger Integration Source Embeddings Source: https://docs.heyhumm.ai/api-reference/integration-sources/trigger-integration-source-embeddings https://config.heyhumm.ai/api/openapi.json post /api/integration-sources/{source_id}/embed Start embeddings update for an integration source. This will queue a background job to update embeddings for the integration source using the new Temporal workflow system with fan-out table processing. # Trigger Integration Source Introspection Source: https://docs.heyhumm.ai/api-reference/integration-sources/trigger-integration-source-introspection https://config.heyhumm.ai/api/openapi.json post /api/integration-sources/{source_id}/introspect Trigger introspection for an integration source. This will queue a background job to discover and update the schema hierarchy: - Databases - Schemas - Tables - Columns - Relationships Args: source_id: Integration source ID force_refresh: Force refresh even if recently introspected # Trigger Integration Source Metadata Enrichment Source: https://docs.heyhumm.ai/api-reference/integration-sources/trigger-integration-source-metadata-enrichment https://config.heyhumm.ai/api/openapi.json post /api/integration-sources/{source_id}/enrich Start metadata enrichment for an integration source. For database sources: queues a background job to enrich metadata using the Temporal workflow system with fan-out table processing. For SaaS sources: triggers AI-powered description generation for objects and fields. Use force_regenerate=True to regenerate all descriptions, even for fields that already have them. # Update Enabled Tools Source: https://docs.heyhumm.ai/api-reference/integration-sources/update-enabled-tools https://config.heyhumm.ai/api/openapi.json put /api/integration-sources/{source_id}/enabled-tools Update the list of enabled tools for an integration source. Validates that all tool names exist in the template before saving. # Update Integration Source Source: https://docs.heyhumm.ai/api-reference/integration-sources/update-integration-source https://config.heyhumm.ai/api/openapi.json put /api/integration-sources/{source_id} Update an integration source. # Update Integration Source Column Source: https://docs.heyhumm.ai/api-reference/integration-sources/update-integration-source-column https://config.heyhumm.ai/api/openapi.json put /api/integration-sources/{source_id}/databases/{database_id}/schemas/{schema_id}/tables/{table_id}/columns/{column_id} Update an integration source column. # Update Integration Source Database Source: https://docs.heyhumm.ai/api-reference/integration-sources/update-integration-source-database https://config.heyhumm.ai/api/openapi.json put /api/integration-sources/{source_id}/databases/{database_id} Update an integration source database. # Update Integration Source Relationship Source: https://docs.heyhumm.ai/api-reference/integration-sources/update-integration-source-relationship https://config.heyhumm.ai/api/openapi.json put /api/integration-sources/relationships/{relationship_id} Update status, score, or evidence for an integration source relationship. # Update Integration Source Schema Source: https://docs.heyhumm.ai/api-reference/integration-sources/update-integration-source-schema https://config.heyhumm.ai/api/openapi.json put /api/integration-sources/{source_id}/databases/{database_id}/schemas/{schema_id} Update an integration source schema. # Update Integration Source Table Source: https://docs.heyhumm.ai/api-reference/integration-sources/update-integration-source-table https://config.heyhumm.ai/api/openapi.json put /api/integration-sources/{source_id}/databases/{database_id}/schemas/{schema_id}/tables/{table_id} Update an integration source table. # Update Saas Association Source: https://docs.heyhumm.ai/api-reference/integration-sources/update-saas-association https://config.heyhumm.ai/api/openapi.json put /api/integration-sources/{source_id}/saas-associations/{association_id} Update fields (including status/score/evidence) for a SaaS association. # Update Saas Field Source: https://docs.heyhumm.ai/api-reference/integration-sources/update-saas-field https://config.heyhumm.ai/api/openapi.json put /api/integration-sources/{source_id}/saas-objects/{object_id}/saas-fields/{field_id} Update a SaaS field. # Update Saas Object Source: https://docs.heyhumm.ai/api-reference/integration-sources/update-saas-object https://config.heyhumm.ai/api/openapi.json put /api/integration-sources/{source_id}/saas-objects/{object_id} Update a SaaS object. # Execute Tool Source: https://docs.heyhumm.ai/api-reference/mcp/execute-tool https://analyst.heyhumm.ai/api/openapi.json post /api/mcp/tool/execute # Get Tool Detail Source: https://docs.heyhumm.ai/api-reference/mcp/get-tool-detail https://analyst.heyhumm.ai/api/openapi.json get /api/mcp/tool/detail # List Connections Source: https://docs.heyhumm.ai/api-reference/mcp/list-connections https://analyst.heyhumm.ai/api/openapi.json get /api/mcp/connection/list # Search Context Source: https://docs.heyhumm.ai/api-reference/mcp/search-context https://analyst.heyhumm.ai/api/openapi.json get /api/mcp/context/search # Search Tools Source: https://docs.heyhumm.ai/api-reference/mcp/search-tools https://analyst.heyhumm.ai/api/openapi.json get /api/mcp/tool/search # Create Memory Source: https://docs.heyhumm.ai/api-reference/memories/create-memory https://analyst.heyhumm.ai/api/openapi.json post /memories Create a new memory. Requires CREATE permission on memory resources. # Delete Memory Source: https://docs.heyhumm.ai/api-reference/memories/delete-memory https://analyst.heyhumm.ai/api/openapi.json delete /memories/{memory_id} Soft delete a memory by setting status to rejected. Requires DELETE permission on memory resources. # Get Memory Source: https://docs.heyhumm.ai/api-reference/memories/get-memory https://analyst.heyhumm.ai/api/openapi.json get /memories/{memory_id} Get a single memory by ID. Requires READ permission on memory resources. # List Memories Source: https://docs.heyhumm.ai/api-reference/memories/list-memories https://analyst.heyhumm.ai/api/openapi.json get /memories List memories with optional filters. Requires READ permission on memory resources. # Search Memories Source: https://docs.heyhumm.ai/api-reference/memories/search-memories https://analyst.heyhumm.ai/api/openapi.json get /memories/search/semantic Semantic search for memories using vector similarity. Requires READ permission on memory resources. # Update Memory Source: https://docs.heyhumm.ai/api-reference/memories/update-memory https://analyst.heyhumm.ai/api/openapi.json patch /memories/{memory_id} Update a memory (status, tags, etc.). Requires UPDATE permission on memory resources. # Create Organization Member Source: https://docs.heyhumm.ai/api-reference/organization-members/create-organization-member https://config.heyhumm.ai/api/openapi.json post /api/organization/{organization_id}/member # Create Organization Member By Email Source: https://docs.heyhumm.ai/api-reference/organization-members/create-organization-member-by-email https://config.heyhumm.ai/api/openapi.json post /api/organization/{organization_id}/member/by-email # Delete Organization Member Source: https://docs.heyhumm.ai/api-reference/organization-members/delete-organization-member https://config.heyhumm.ai/api/openapi.json delete /api/organization/{organization_id}/member/{member_id} # Get Organization Members Source: https://docs.heyhumm.ai/api-reference/organization-members/get-organization-members https://config.heyhumm.ai/api/openapi.json get /api/organization/{organization_id}/member # Update Organization Member Source: https://docs.heyhumm.ai/api-reference/organization-members/update-organization-member https://config.heyhumm.ai/api/openapi.json put /api/organization/{organization_id}/member/{member_id} # Get Ontology Version Source: https://docs.heyhumm.ai/api-reference/organizations/get-ontology-version https://config.heyhumm.ai/api/openapi.json get /api/organization/{organization_id}/ontology/versions/{version_id} # Get Organization Source: https://docs.heyhumm.ai/api-reference/organizations/get-organization https://config.heyhumm.ai/api/openapi.json get /api/organization/{organization_id} # Get Organization Ontology Source: https://docs.heyhumm.ai/api-reference/organizations/get-organization-ontology https://config.heyhumm.ai/api/openapi.json get /api/organization/{organization_id}/ontology # Get Organizations Source: https://docs.heyhumm.ai/api-reference/organizations/get-organizations https://config.heyhumm.ai/api/openapi.json get /api/organization Get all organizations the user has access to # Get Storage Settings Source: https://docs.heyhumm.ai/api-reference/organizations/get-storage-settings https://config.heyhumm.ai/api/openapi.json get /api/organization/{organization_id}/storage-setting # List Ontology Versions Source: https://docs.heyhumm.ai/api-reference/organizations/list-ontology-versions https://config.heyhumm.ai/api/openapi.json get /api/organization/{organization_id}/ontology/versions # Update Organization Source: https://docs.heyhumm.ai/api-reference/organizations/update-organization https://config.heyhumm.ai/api/openapi.json put /api/organization/{organization_id} # Update Organization Ontology Source: https://docs.heyhumm.ai/api-reference/organizations/update-organization-ontology https://config.heyhumm.ai/api/openapi.json put /api/organization/{organization_id}/ontology # Update Storage Settings Source: https://docs.heyhumm.ai/api-reference/organizations/update-storage-settings https://config.heyhumm.ai/api/openapi.json put /api/organization/{organization_id}/storage-setting # Validate Storage Settings Source: https://docs.heyhumm.ai/api-reference/organizations/validate-storage-settings https://config.heyhumm.ai/api/openapi.json post /api/organization/{organization_id}/storage-setting/validate # Delete Run Source: https://docs.heyhumm.ai/api-reference/reports/delete-run https://analyst.heyhumm.ai/api/openapi.json delete /reports/runs/{run_id} Delete a report run and its associated thread. # Get Inbox Source: https://docs.heyhumm.ai/api-reference/reports/get-inbox https://analyst.heyhumm.ai/api/openapi.json get /reports/inbox Get user's reports inbox. # Get Run Details Source: https://docs.heyhumm.ai/api-reference/reports/get-run-details https://analyst.heyhumm.ai/api/openapi.json get /reports/runs/{run_id} Get detailed information about a specific run. # Get Run Formatted Source: https://docs.heyhumm.ai/api-reference/reports/get-run-formatted https://analyst.heyhumm.ai/api/openapi.json get /reports/runs/{run_id}/formatted Get run details with formatted thread content optimized for UI rendering. # Get Schedule History Source: https://docs.heyhumm.ai/api-reference/reports/get-schedule-history https://analyst.heyhumm.ai/api/openapi.json get /reports/schedules/{schedule_id}/runs Get run history for a schedule. # Mark Run As Read Source: https://docs.heyhumm.ai/api-reference/reports/mark-run-as-read https://analyst.heyhumm.ai/api/openapi.json post /reports/runs/{run_id}/mark-read Mark a run as read. # Trigger Schedule Run Source: https://docs.heyhumm.ai/api-reference/reports/trigger-schedule-run https://analyst.heyhumm.ai/api/openapi.json post /reports/schedules/{schedule_id}/trigger Manually trigger a scheduled report for the current user. # Create Role Source: https://docs.heyhumm.ai/api-reference/roles/create-role https://config.heyhumm.ai/api/openapi.json post /api/organization/{organization_id}/role # Delete Role Source: https://docs.heyhumm.ai/api-reference/roles/delete-role https://config.heyhumm.ai/api/openapi.json delete /api/organization/{organization_id}/role/{role_id} # Get Role Source: https://docs.heyhumm.ai/api-reference/roles/get-role https://config.heyhumm.ai/api/openapi.json get /api/organization/{organization_id}/role/{role_id} # List Roles Source: https://docs.heyhumm.ai/api-reference/roles/list-roles https://config.heyhumm.ai/api/openapi.json get /api/organization/{organization_id}/role List all roles: built-in system roles + custom org roles. # Set Role Permissions Source: https://docs.heyhumm.ai/api-reference/roles/set-role-permissions https://config.heyhumm.ai/api/openapi.json put /api/organization/{organization_id}/role/{role_id}/permission Replace all permissions for a role. Full replacement semantics in a single transaction. # Update Role Source: https://docs.heyhumm.ai/api-reference/roles/update-role https://config.heyhumm.ai/api/openapi.json put /api/organization/{organization_id}/role/{role_id} # Add Subscriber Source: https://docs.heyhumm.ai/api-reference/schedules/add-subscriber https://analyst.heyhumm.ai/api/openapi.json post /schedules/{schedule_id}/subscribers Add a subscriber to a schedule. # Create Schedule Source: https://docs.heyhumm.ai/api-reference/schedules/create-schedule https://analyst.heyhumm.ai/api/openapi.json post /commands/{command_id}/schedules Create a schedule for a command. # Delete Schedule Source: https://docs.heyhumm.ai/api-reference/schedules/delete-schedule https://analyst.heyhumm.ai/api/openapi.json delete /schedules/{schedule_id} Delete a schedule and its associated data. # List All Schedules Source: https://docs.heyhumm.ai/api-reference/schedules/list-all-schedules https://analyst.heyhumm.ai/api/openapi.json get /commands/schedules List all schedules for an organization. # List Schedules For Command Source: https://docs.heyhumm.ai/api-reference/schedules/list-schedules-for-command https://analyst.heyhumm.ai/api/openapi.json get /commands/{command_id}/schedules List schedules for a command. # List Subscribers Source: https://docs.heyhumm.ai/api-reference/schedules/list-subscribers https://analyst.heyhumm.ai/api/openapi.json get /schedules/{schedule_id}/subscribers List subscribers for a schedule. # Remove Subscriber Source: https://docs.heyhumm.ai/api-reference/schedules/remove-subscriber https://analyst.heyhumm.ai/api/openapi.json delete /schedules/{schedule_id}/subscribers/{subscriber_user_id} Remove a subscriber from a schedule. # Update Schedule Source: https://docs.heyhumm.ai/api-reference/schedules/update-schedule https://analyst.heyhumm.ai/api/openapi.json put /schedules/{schedule_id} Update a schedule's settings. # Cancel Thread Source: https://docs.heyhumm.ai/api-reference/threads/cancel-thread https://analyst.heyhumm.ai/api/openapi.json post /threads/{thread_id}/cancel Cancel a running analysis thread. This endpoint: 1. Updates thread status to CANCELLED 2. Persists cancelled_blocks in checkpoint state for UI display 3. Cancels the running Temporal workflow if one exists 4. Returns cancellation confirmation Requires UPDATE permission on ANALYSIS resources. # Create Command From Thread Source: https://docs.heyhumm.ai/api-reference/threads/create-command-from-thread https://analyst.heyhumm.ai/api/openapi.json post /threads/{thread_id}/create-command Create a reusable command from a thread conversation via LLM. Validates the thread, creates a Command record with generation_status='generating', starts a background Temporal workflow to extract command content, and returns 202. # Delete Thread Source: https://docs.heyhumm.ai/api-reference/threads/delete-thread https://analyst.heyhumm.ai/api/openapi.json delete /threads/{thread_id} Delete a thread and all its associated data. Requires DELETE permission on ANALYSIS resources. # Get Supported Models Source: https://docs.heyhumm.ai/api-reference/threads/get-supported-models https://analyst.heyhumm.ai/api/openapi.json get /threads/supported-models Returns the list of models that can be used for thread creation. # Get Thread Source: https://docs.heyhumm.ai/api-reference/threads/get-thread https://analyst.heyhumm.ai/api/openapi.json get /threads/{thread_id} Get a specific thread in its raw state, including OpenAI style messages array with tool calls. Requires READ permission on ANALYSIS resources. # Get Thread Formatted Source: https://docs.heyhumm.ai/api-reference/threads/get-thread-formatted https://analyst.heyhumm.ai/api/openapi.json get /threads/{thread_id}/formatted Get a specific thread with optimized format for frontend rendering. Requires READ permission on ANALYSIS resources. # Get Thread Status Source: https://docs.heyhumm.ai/api-reference/threads/get-thread-status https://analyst.heyhumm.ai/api/openapi.json get /threads/{thread_id}/status Get thread status for polling. Uses lightweight validation to avoid loading the full thread state. Requires READ permission on ANALYSIS resources. # Get Threads Source: https://docs.heyhumm.ai/api-reference/threads/get-threads https://analyst.heyhumm.ai/api/openapi.json get /threads Get threads for a specific organization with pagination support. Requires READ permission on ANALYSIS resources. # Search Threads Source: https://docs.heyhumm.ai/api-reference/threads/search-threads https://analyst.heyhumm.ai/api/openapi.json get /threads/search Search threads using semantic similarity on title and last_message. Requires READ permission on ANALYSIS resources. # Start Thread Source: https://docs.heyhumm.ai/api-reference/threads/start-thread https://analyst.heyhumm.ai/api/openapi.json post /threads/async Starts an AI analysis in the background and returns immediately with thread metadata. This endpoint enables polling-based UI updates by starting agent execution in the background and returning thread information immediately. Supports model configuration via the llm_config parameter (defaults to "deep" if not provided). # Update Thread Source: https://docs.heyhumm.ai/api-reference/threads/update-thread https://analyst.heyhumm.ai/api/openapi.json put /threads/{thread_id} Update a thread's metadata (e.g., title). Requires UPDATE permission on ANALYSIS resources. # Presign Uploads Source: https://docs.heyhumm.ai/api-reference/uploads/presign-uploads https://analyst.heyhumm.ai/api/openapi.json post /api/upload/presign Return presigned S3 PUT URLs for direct browser upload. # Process Uploads Source: https://docs.heyhumm.ai/api-reference/uploads/process-uploads https://analyst.heyhumm.ai/api/openapi.json post /api/upload/process Process raw files uploaded to S3 via presigned URLs. Downloads raw files, parses into DataFrames, caches as JSON, deletes raw files. # Upload Files Source: https://docs.heyhumm.ai/api-reference/uploads/upload-files https://analyst.heyhumm.ai/api/openapi.json post /api/upload Upload and parse CSV/XLSX files, cache as DataFrames in S3. Returns metadata for each parsed dataset (cache key, schema, row count) to be included in the subsequent ChatRequest. # Create Or Update User Identifier Source: https://docs.heyhumm.ai/api-reference/user-identifiers/create-or-update-user-identifier https://config.heyhumm.ai/api/openapi.json post /api/organization/{organization_id}/user/{user_id}/identifiers Create or update a user identifier. This endpoint uses upsert logic - if an identifier with the same organization, user, integration source, and key already exists, it updates it. Args: organization_id: Organization ID user_id: User ID identifier: Identifier data to create/update db: Database session current_user_id: Current authenticated user ID Returns: Created or updated identifier # Delete User Identifier Source: https://docs.heyhumm.ai/api-reference/user-identifiers/delete-user-identifier https://config.heyhumm.ai/api/openapi.json delete /api/organization/{organization_id}/user-identifiers/{identifier_id} Delete a user identifier. Args: organization_id: Organization ID identifier_id: Identifier ID to delete db: Database session current_user_id: Current authenticated user ID # List Integration Source User Identifiers Source: https://docs.heyhumm.ai/api-reference/user-identifiers/list-integration-source-user-identifiers https://config.heyhumm.ai/api/openapi.json get /api/organization/{organization_id}/integration-source/{source_id}/user-identifiers List all user identifiers for a specific integration source. Args: organization_id: Organization ID source_id: Integration source ID db: Database session current_user_id: Current authenticated user ID Returns: List of user integration identifiers for this source # List User Identifiers Source: https://docs.heyhumm.ai/api-reference/user-identifiers/list-user-identifiers https://config.heyhumm.ai/api/openapi.json get /api/organization/{organization_id}/user/{user_id}/identifiers List all identifiers for a user across integration sources. Args: organization_id: Organization ID user_id: User ID integration_source_id: Optional filter by integration source db: Database session current_user_id: Current authenticated user ID Returns: List of user integration identifiers # Trigger User Identification Source: https://docs.heyhumm.ai/api-reference/user-identifiers/trigger-user-identification https://config.heyhumm.ai/api/openapi.json post /api/organization/{organization_id}/users/identify Trigger user identification process for all users or a specific user. This queues background jobs to identify users across all integration sources. Args: organization_id: Organization ID user_id: Optional specific user ID (if None, identifies all org users) db: Database session current_user_id: Current authenticated user ID Returns: Confirmation message # Assign User Role Source: https://docs.heyhumm.ai/api-reference/user-roles/assign-user-role https://config.heyhumm.ai/api/openapi.json post /api/organization/{organization_id}/user-role Assign a role to a user. # List User Roles Source: https://docs.heyhumm.ai/api-reference/user-roles/list-user-roles https://config.heyhumm.ai/api/openapi.json get /api/organization/{organization_id}/user-role List all role assignments in the organization. # List User Roles For User Source: https://docs.heyhumm.ai/api-reference/user-roles/list-user-roles-for-user https://config.heyhumm.ai/api/openapi.json get /api/organization/{organization_id}/user-role/user/{user_id} List all role assignments for a specific user in the organization. # Revoke User Role Source: https://docs.heyhumm.ai/api-reference/user-roles/revoke-user-role https://config.heyhumm.ai/api/openapi.json delete /api/organization/{organization_id}/user-role/{user_role_id} Revoke a role assignment. # Commands Source: https://docs.heyhumm.ai/features/commands Save and reuse prompts to automate repetitive analyses. Commands are reusable prompts that save you time on repetitive work. Instead of typing out the same detailed question each time, create a Command once and run it whenever you need it. Need to manage commands outside the UI? See [Manage Commands via API](../guides/manage-commands-via-api). ## Why Use Commands? Many analyses follow the same pattern: * Preparing for a QBR with a specific account * Running weekly portfolio health checks * Assessing churn risk for renewal accounts * Generating onboarding status reports Without Commands, you'd type out (or copy-paste) the same detailed prompt every time. With Commands, you save the prompt once and run it with a single click. ## Creating a Command 1. Click **Commands** in the sidebar 2. Click **New Command** 3. Give your Command a name (e.g., "QBR Prep") 4. Write the prompt you want to reuse 5. Add any variables for dynamic content (optional) 6. Click **Save** ### Using Variables Variables let you customize a Command each time you run it. Wrap variable names in double curly braces: ``` Prepare a QBR summary for {{account_name}} including: - Health score trends over the last 6 months - Product usage highlights - Open support tickets - Expansion opportunities ``` When you run this Command, Humm will ask you to fill in `account_name` before executing. ## Running a Command 1. Click **Commands** in the sidebar 2. Find the Command you want to run 3. Click **Run** 4. Fill in any variables if prompted 5. Humm creates a new thread with the Command's prompt The result is a regular thread, so you can ask follow-up questions and dig deeper. If you have a long command library, use the search bar at the top of the Commands page to filter by command name or description. ## Command Ideas Generate a comprehensive account review with health metrics, usage trends, and talking points. Summarize health changes, at-risk accounts, and expansion opportunities across your book of business. Analyze warning signs for accounts approaching renewal, with recommended actions. Track onboarding progress, milestone completion, and early adoption metrics. ## Sharing Commands Commands can be personal or shared with your team: * **Personal Commands** — Only you can see and run them * **Team Commands** — Anyone on your team can use them To share a Command, open it and click **Share with Team**. Shared Commands appear in everyone's Command library. ## Save a Thread as a Command At the end of a productive thread, choose **Save as Command**. Humm extracts the question pattern and auto-detects variable placeholders (`{{variable}}`), so you don't have to build the command from scratch. This is the fastest way to create a command — let a real conversation prove out the analysis first, then save it for reuse. ## Using @ References in Commands Use `@` references to pin a command to specific tables or fields. This keeps results consistent even as your schema evolves. ``` Show weekly active users from @[table:events] grouped by @[column:events.plan_tier] ``` See [Threads — Using @ References](/features/threads#using--references) for the full syntax. ## Editing and Deleting Commands Open any Command to edit its name, prompt, or variables. Changes apply immediately—the next time anyone runs the Command, they'll get the updated version. ### Edit with the Assistant If you want help tightening a prompt instead of rewriting it by hand: 1. Open the Command 2. Start an edit conversation with the assistant 3. Describe the change you want 4. Review the proposed diff 5. Approve the update when it looks right The assistant works against a draft first, so you can inspect the proposed changes before they go live. ### Review History and Restore an Older Version Every saved update creates a history snapshot. Open **History** on a command to: * Review earlier versions * Compare an older snapshot against the current version * Restore a previous version if you need to roll back a prompt change Restoring an older version makes that snapshot the live command again. Humm also records the restore in version history so you keep a clear audit trail. To delete a Command, open it and click **Delete**. Deleted Commands can't be recovered, so make sure you don't need it anymore. ## Tips for Effective Commands Commands work best when the prompt is specific. Include exactly what sections, metrics, and format you want in the output. Name variables descriptively: `{{account_name}}` is clearer than `{{x}}`. This helps when running the Command later. Run your Command a few times with different inputs to make sure it produces good results before sharing with your team. If you asked a great question in a thread and want to reuse it, copy the prompt into a new Command. You already know it works. # Memories Source: https://docs.heyhumm.ai/features/memories Teach Humm your business definitions, data relationships, and preferences. Memories capture knowledge from your conversations — business definitions, data relationships, and organizational context. The more accurate Memories Humm has, the better it answers questions about your specific business. Need to manage memories outside the UI? See [Manage Memories via API](../guides/manage-memories-via-api). ## How Memories Work When you interact with Humm, it listens for information that might be useful later: * **Business definitions** — What terms mean in your organization * **Data relationships** — How different systems connect * **Preferences** — How you like information presented * **Corrections** — Feedback when something was wrong Humm proposes new Memories based on your conversations. You review and approve them before they take effect, so you stay in control of what Humm learns. ## Examples of Memories "Enterprise accounts are those with ARR over \$100k" "The account\_id field in HubSpot maps to external\_id in Snowflake" "Health score is calculated as 40% product usage + 30% support tickets + 30% engagement" "Sarah owns the West region accounts, Marcus owns East" ## Reviewing Memories When Humm proposes a new Memory, you'll see it in your **Memories** section with a "Pending Review" status. For each proposed Memory, you can: * **Approve** — The Memory becomes active and Humm will use it going forward * **Edit** — Adjust the wording before approving * **Reject** — Discard the Memory if it's not useful or accurate Take a moment to review pending Memories regularly. The more accurate Memories Humm has, the better your answers will be. ## Managing Memories ### Viewing Active Memories Click **Memories** in the sidebar to see everything Humm has learned. Memories are organized by category: * **Definitions** — Business terms and their meanings * **Relationships** — How data connects across systems * **Preferences** — Your formatting and presentation preferences * **Context** — Organizational and process information ### Editing Memories Click any Memory to edit it. You might update a Memory when: * A business definition changes * You find a more accurate way to express something * The original wording was slightly off Changes take effect immediately for all future conversations. ### Deleting Memories If a Memory is outdated or incorrect, click it and select **Delete**. Humm will stop using that information right away. ## Teaching Humm Directly You don't have to wait for Humm to propose Memories. You can teach Humm directly in any conversation: * "Remember that we call accounts 'at risk' when their health score drops below 60" * "Note that our fiscal year starts in February" * "Keep in mind that the sales team uses 'MQL' to mean Marketing Qualified Lead" Humm will create a Memory from your instruction. You'll still see it in your Memories list where you can review or edit it. ## Team vs. Personal Memories Memories can be scoped to you personally or shared across your team: * **Personal Memories** — Apply only to your conversations * **Team Memories** — Apply to everyone on your team Most business definitions and data relationships should be Team Memories so everyone benefits. Personal Memories work well for individual preferences. ## Tips for Better Memories "Enterprise accounts have ARR over \$100k" is better than "Enterprise accounts are big accounts." If Humm gets something wrong, tell it. "Actually, that's not right—health score doesn't include NPS." This creates a Memory that prevents the same mistake. Check your Memories every few weeks. Business definitions change, and keeping Memories current keeps answers accurate. When you teach Humm something useful, consider making it a Team Memory so everyone benefits from the knowledge. # Ontology Source: https://docs.heyhumm.ai/features/ontology How Humm maps your business entities, relationships, and metrics. The ontology is Humm's map of your business. It defines your key entities (Customers, Accounts, Products), how they relate, and the metrics you care about. A better ontology means more accurate answers. Need to update ontology programmatically? See [Manage Ontology via API](../guides/manage-ontology-via-api). ## What's in the Ontology? ### Entities Entities are the core concepts in your business. Common examples: * **Account** — A company or organization you do business with * **Contact** — A person associated with an account * **Opportunity** — A potential deal or sale * **Subscription** — A recurring revenue relationship * **User** — Someone who uses your product * **Event** — An action or activity in your product Each entity has attributes (like name, created date, or status) that describe it. ### Relationships Relationships define how entities connect: * Accounts **have** Contacts * Accounts **have** Subscriptions * Users **belong to** Accounts * Users **generate** Events * Opportunities **convert to** Subscriptions These relationships let Humm navigate your data and answer questions that span multiple systems. ### Metrics Metrics are the key performance indicators you track: * **Monthly Recurring Revenue (MRR)** — Revenue from subscriptions * **Churn Rate** — Percentage of customers who cancel * **Net Promoter Score (NPS)** — Customer satisfaction measure * **Health Score** — Overall account health indicator Humm uses metric definitions to calculate values consistently across your analyses. ## How Humm Builds the Ontology When you connect integrations, Humm automatically discovers your data structure: 1. **Schema discovery** — Humm reads your tables, fields, and data types 2. **Entity detection** — Humm identifies business entities from your data 3. **Relationship inference** — Humm detects how entities connect based on keys and patterns 4. **Metric recognition** — Humm identifies common metrics and calculations This automatic process gives you a working ontology immediately. You can then refine it to match exactly how your team thinks about the business. ## Viewing the Ontology Click **Ontology** in the sidebar to explore Humm's understanding of your business. You'll see: * **Entity list** — All recognized entities and their attributes * **Relationship map** — Visual diagram of how entities connect * **Metric definitions** — How key metrics are calculated * **Data sources** — Which integrations power each entity ## Refining the Ontology The automatic ontology is a starting point. Refine it to improve accuracy: ### Renaming Entities If Humm calls something "Company" but your team says "Account," rename it. Humm will understand both terms, but using your team's language makes conversations more natural. ### Adding Relationships If Humm missed a connection between entities, add it manually. For example, if your product data links to accounts through a custom field, define that relationship so Humm can traverse it. ### Defining Metrics Add your specific metric calculations. If your health score formula is unique to your business, define it in the ontology so Humm calculates it correctly every time. ### Adding Business Context Enrich entities with descriptions and examples: * "Churned accounts are those with status = 'cancelled' and no active subscription" * "Enterprise tier includes Pro, Business, and Enterprise plans" This context helps Humm interpret your questions accurately. ## Ontology and Accuracy The ontology directly affects answer quality: | Ontology Quality | Result | | - | - | | **Minimal** | Humm can answer basic questions but may miss nuances | | **Good** | Humm understands your terminology and key relationships | | **Excellent** | Humm reasons about your business like a team member | Time spent on the ontology pays off in every conversation. ## Tips for a Better Ontology Name entities and metrics the way your team talks about them. If everyone says "ARR" not "Annual Recurring Revenue," use "ARR." Clarify ambiguous situations: "An active account is one with at least one paying subscription, excluding trials." The ontology works best when all your integrations are linked. Make sure Humm knows how to join data across systems. As your business evolves, so should your ontology. Review it quarterly to add new entities, metrics, or relationships. # Scheduled Commands Source: https://docs.heyhumm.ai/features/scheduled-commands Automate report generation by running saved commands on a regular schedule. Scheduled Commands let you automate your recurring analyses. Instead of manually running the same command each week or month, schedule it once and Humm will run it automatically—delivering results straight to your inbox and your team's. ## Why Use Scheduled Commands? Many reports need to run on a regular basis: * Weekly revenue and pipeline summaries * Daily active user metrics * Monthly customer health reviews * End-of-week team performance reports Without scheduling, you'd need to remember to run these reports manually. With Scheduled Commands, you configure it once and receive results automatically. ## Creating a Schedule Before you can schedule a command, make sure you have a saved command ready to go. ### Steps to Schedule 1. Navigate to your saved command in **Commands** 2. Click the **Schedule** button (calendar icon) 3. Configure your schedule: * **Cadence** — Daily, weekly, weekdays, or monthly * **Run Mode** — Per Subscriber or Once & Distribute * **Day** — For weekly or monthly, select which day to run * **Run Time** — When the report should execute * **Timezone** — Your preferred timezone * **Run Mode** — How to execute for multiple subscribers * **Enabled** — Toggle to activate 4. Click **Create Schedule** You'll automatically be subscribed to receive the reports. ### Schedule Options Choose how often your report runs: * **Daily** — Runs every day at the specified time * **Weekdays** — Runs Monday through Friday at the specified time * **Weekly** — Runs once per week on your chosen day * **Monthly** — Runs once per month on your chosen day (1-28) Pick from multiple timezones including Eastern, Central, Mountain, Pacific, UTC, London, and Central European time. Timezones that observe daylight saving automatically adjust, so your reports always run at the expected local time. Select the exact time for execution. Consider your team's workflow: * **Morning (8-10 AM)** — Start the day with fresh insights * **End of day (4-6 PM)** — Daily summaries before close * **Overnight (2-4 AM)** — Process heavy queries during off-peak hours Choose how reports execute when you have multiple subscribers: * **Per Subscriber** (default) — Runs once for each subscriber using their individual data access and permissions. Best for personalized reports where each user sees data relevant to them. * **Once & Distribute** — Runs once and distributes the same results to all subscribers. More efficient for reports where everyone should see identical content. ## Managing Subscribers After creating a schedule, you can add team members to receive the same reports. ### Adding Subscribers 1. Open the schedule dialog 2. Click **Add** in the Subscribers section 3. Select team members from the dropdown 4. They'll start receiving reports on the next run Organization admins can add any team member. Schedule owners can also add team members to schedules they manage. If you are just viewing someone else's schedule, you can only subscribe or unsubscribe yourself. ### Removing Subscribers 1. Open the schedule dialog 2. Find the subscriber in the list 3. Click the **X** button next to their name 4. They'll stop receiving reports immediately ## The Reports Inbox Access all your scheduled reports in one place by clicking **Reports** in the sidebar. ### What You'll See Each report card shows: * Command name and description * Cadence badge (daily, weekly, weekdays, monthly) * Latest run summary * Status indicators: * **Dot** — New unread report * **Red alert icon** — Latest run failed * **Faded appearance** — Schedule is disabled ### Reading Reports Click any report card to: * View the full report with all results and visualizations * Mark it as read (removes the unread indicator) * Access the complete conversation thread ## Running On-Demand You don't have to wait for the next scheduled time. Open any scheduled command and click **Run Now** to trigger it immediately. The results appear in your Reports inbox just like a scheduled run. ## Run History Every scheduled report maintains a complete history: 1. Open a report from your inbox 2. Click **View History** 3. See all past runs with: * Execution status (completed, failed, in progress) * Start and completion times * Full report content * Error details for failed runs (including the error message and which step failed) ## Email Notifications Stay informed without logging in—Humm sends email notifications when reports are ready. ### Success Notifications When a report completes successfully, you'll receive: * Report name and AI-generated summary * Link to view the full report * Timestamp of execution * Link to manage preferences ### Failure Notifications If a report fails, you'll receive: * Report name * Error message explaining what went wrong * Link to fix the issue * Link to manage preferences ### Managing Email Preferences Control which notifications you receive: 1. Click your profile icon 2. Select **Notification Preferences** 3. Toggle scheduled report notifications on or off You can also manage preferences via the link in any notification email. ## Editing and Disabling Schedules ### Editing a Schedule To modify an existing schedule: 1. Open the schedule dialog 2. Update any settings (cadence, time, timezone) 3. Click **Save** Only the schedule creator or organization admins can edit schedule settings. ### Disabling vs. Deleting **Disable** to pause temporarily: * Schedule stays configured * No reports run while disabled * All subscribers remain subscribed * Re-enable anytime **Delete** to remove permanently: * All settings are lost * All subscribers are unsubscribed * Historical runs are deleted * Cannot be undone You cannot delete a schedule while runs are in progress. Wait for them to complete first. ## Best Practices **Daily** for fast-moving metrics that need monitoring (active users, overnight sales) **Weekly** for trend analysis and regular team updates (growth metrics, pipeline reports) **Weekdays** for business-day reports (skipping weekends) **Monthly** for high-level summaries and executive reporting (revenue, retention) **Per Subscriber** for personalized reports where each user sees data based on their permissions (e.g., regional sales for different sales reps) **Once & Distribute** for organization-wide reports where everyone sees identical data (e.g., company-wide KPIs) **Morning** gives your team insights to start the day **End-of-day** provides summaries before close **Overnight** handles heavy queries during off-peak hours Only add team members who need the specific report. Create multiple schedules with different cadences for different audiences (daily for ops, weekly for executives). Check error messages in failure emails. Common causes: data source issues, deleted data, permission changes. Test the command manually to fix the issue. ## Permissions ### Who Can Schedule Commands * **Command creators** can schedule any command they created * **Organization admins** can schedule any command in the organization ### Who Can Manage Schedules * **Schedule creator** has full control to edit or delete * **Organization admins** can manage any schedule ### Who Can Subscribe * **Anyone** can subscribe themselves to existing schedules * **Organization admins** can subscribe other team members * **Schedule creators** can subscribe other team members to schedules they manage ### Who Can Add Subscribers While Creating a Schedule * **Command creators** can choose the initial subscriber list when they create a schedule for their own command * **Organization admins** can choose the initial subscriber list for any command ## Troubleshooting 1. Check your **Notification Preferences** — ensure scheduled reports are enabled 2. Check your spam folder 3. Verify your email address in your profile 4. Confirm the run completed (failed runs send failure notifications) 1. Verify the timezone setting matches your expectation 2. Check if the schedule is disabled 3. Remember: DST-observing timezones automatically adjust in March and November 1. Review the error message in the failure notification 2. Run the command manually to reproduce the issue 3. Check data source connectivity in your integrations 4. Verify permissions on underlying data haven't changed 5. Contact support if the issue persists Only the schedule creator or organization admins can edit or delete schedules. If you need changes and lack permissions, contact your admin or the schedule creator. ## Frequently Asked Questions The minimum schedule interval is 15 minutes. You can create multiple schedules for the same command if you need different timing (e.g., one for morning, one for evening). The system waits for the current run to complete before starting the next one. Runs never overlap. Not currently. Scheduled commands must be fully automated. If your command has variables, set fixed values when you save the command for scheduling. If a command is deleted, all associated schedules, subscriptions, and historical runs are also deleted. All run history is retained indefinitely and accessible through the Reports Inbox. # Threads Source: https://docs.heyhumm.ai/features/threads Have conversations with Humm to explore your data and get answers. Threads are conversations with Humm. Each thread is a back-and-forth dialogue where you ask questions in plain English and Humm provides answers with data, charts, and recommendations. ## Starting a Thread Click **New Thread** from the sidebar to start a conversation. Type your question in the message box—no special syntax or query language needed. **Example questions to get started:** * "Which accounts have the highest churn risk?" * "Show me product usage trends for Acme Corp" * "What's our average NPS score by customer segment?" ## Understanding Humm's Response When you ask a question, Humm shows you two things: ### Reasoning The reasoning section shows how Humm is thinking through your question. You'll see which data sources it's querying, what calculations it's running, and how it's arriving at the answer. This transparency helps you trust the results and catch any misunderstandings early. ### Answer The answer section contains Humm's response, which may include: * **Text explanations** — Context and insights about what the data shows * **Charts and visualizations** — Graphs that make patterns easy to spot * **Data tables** — The underlying numbers you can explore * **Recommendations** — Suggested next steps based on the analysis ## Asking Follow-Up Questions The real power of threads comes from follow-up questions. After Humm answers, you can dig deeper: * "Break this down by region" * "Why did churn spike in Q3?" * "Show me the accounts driving this number" * "Compare this to last quarter" Humm remembers the context of your conversation, so you don't need to repeat yourself. ## Watching Context Usage Long threads can use a lot of context. When a thread reaches meaningful context usage, Humm shows a small context indicator beside the chat input. Hover over the indicator to see the percentage of context used. If usage gets high, Humm may suggest starting a new thread so the next analysis has more room to work with your question and data. ## Managing Threads ### Finding Past Threads All your threads are saved automatically. Use the sidebar to browse past conversations, or search by keyword to find a specific analysis. ### Copying and Sharing Every AI message has a **Copy** button to grab the text. Use the **Share** dropdown on a thread to share it with teammates — recipients can view the full conversation and continue asking their own questions. ### Organizing Threads Pin important threads to keep them at the top of your list. You can also rename threads to make them easier to find later. ## Tips for Better Results Instead of "Show me churn data," try "Show me accounts that churned in the last 90 days with ARR over \$50k." Humm defaults to reasonable timeframes, but specifying "last quarter" or "year over year" gets you exactly what you need. Questions like "How does this compare to last month?" or "Which segment is performing best?" often reveal the most useful insights. If you want a chart, table, or list, just ask. "Show me a trend chart of monthly active users" or "Give me a table of at-risk accounts." ## Uploading Files Use the upload button in the chat input or drag a file into the conversation. Humm accepts CSV and XLSX files. **Limits:** * Up to 10 files per message * 10 MB per file * 50 MB total per message After you upload, Humm shows a preview of the data before running any analysis. This is useful for ad-hoc datasets that aren't in your warehouse — upload a spreadsheet and ask questions about it the same way you'd query a connected source. Pair file uploads with a command to re-run the same analysis on fresh data each week. Export a report, drop it in, and let the command do the rest. ## Attaching Images Paste a screenshot or attach an image directly in the chat. Use this to share a chart you want Humm to recreate, point at a UI state, or paste an error message for troubleshooting. ## Using @ References Type `@` in the chat input to reference specific tables, columns, or SaaS objects. Humm fetches their metadata (schema, row counts, sample values) and focuses the analysis on exactly what you're pointing at. **Syntax:** * `@[table:customers]` — a database table * `@[column:users.email]` — a specific column * `@[saas_object:Contact]` — a CRM/SaaS object type * `@[saas_field:Contact.owner]` — a specific field on an object This is especially useful when your schema has similarly named tables or when you want Humm to skip discovery and go straight to the right data. ## When to Start a New Thread Start a new thread when you're switching to a completely different topic. If you're still exploring the same general area, keep going in the same thread. The context helps Humm give better answers. # Getting Started Source: https://docs.heyhumm.ai/getting-started Set up Humm and ask your first question in under ten minutes. ## Before You Begin To get started, you'll need: * An invitation to your organization's Humm workspace (check your email) * Login credentials (usually your company SSO) * A data source to connect (your admin may have already set this up) If you're not sure whether your organization has Humm set up, reach out to your manager or IT team. *** ## Step 1: Log In to Humm 1. Go to [app.heyhumm.ai](https://app.heyhumm.ai/) 2. Click **Log In** and sign in with your company credentials (SSO) 3. You should see your organization name in the bottom left corner If you're joining an existing team, you'll likely see integrations and threads that others have already created. Feel free to explore! *** ## Step 2: Connect Your Data Before Humm can answer questions, it needs access to your data. If your admin hasn't already set up integrations, here's how to add one: