All integrations

Hex

DATA · DATA & ANALYTICS

Projects, their runs and outputs, cells, and collections in that workspace.

Acts as the person, not as itself

Each user connects their own account. Every call carries both identities — the agent and the person it is acting for — so the agent can never reach past what that individual can already do.

Credentials never touch the agent

Tokens live in the vault and attach server-side at call time. The agent holds a session, not a secret, and revoking access does not mean rotating a key.

Every call on the record

Who asked, which agent acted, which action ran, and the verdict that let it through — one audit trail across every integration, not one per vendor.

What an agent can do

Each action is granted on its own. An agent allowed to read is not thereby allowed to write, and the scope beside each row is what the acting user must have connected for it to run at all.

hex_delete_cells_by_cellidWRITE

Delete Cell via DELETE /cells/{cellId}. Delete a cell from the draft version of a project by ID This endpoint is subject to the following rate limits: - `hex-api-30rpm`: Rate limit group for the Hex API at 30 requests per minute - Max 30 requests per minute Destructive and permanent; Hex offers no undo through this API.

api
hex_delete_groups_by_groupidWRITE

Delete Group via DELETE /groups/{groupId}. Destructive and permanent; Hex offers no undo through this API.

api
hex_delete_guides_draft_by_orgguidefileidWRITE

Delete Guide Draft via DELETE /guides/draft/{orgGuideFileId}. Destructive and permanent; Hex offers no undo through this API.

api
hex_delete_projects_by_projectid_runs_by_runidWRITE

Cancel Run via DELETE /projects/{projectId}/runs/{runId}. Cancel a project run. Destructive and permanent; Hex offers no undo through this API.

api
hex_get_cellsREAD

List Cells via GET /cells. List cells from the draft version of a project. Returns code, SQL, and markdown cell contents. This endpoint is subject to the following rate limits: - `hex-api-30rpm`: Rate limit group for the Hex API at 30 requests per minute - Max 30 requests per minute

api
hex_get_cells_by_cellidREAD

Get Cell via GET /cells/{cellId}. Get a single cell by ID This endpoint is subject to the following rate limits: - `hex-api-30rpm`: Rate limit group for the Hex API at 30 requests per minute - Max 30 requests per minute

api
hex_get_cells_by_cellid_imageREAD

Get Chart Image From Logic via GET /cells/{cellId}/image. Get the rendered PNG image of a chart cell from the project's current notebook (draft) session. The cell must have been executed and must not be in an error state. Only chart-type cells are supported. This endpoint is subject to the following rate limits: - `hex-chart-image`: Rate limits for rendering chart images - Max 20 requests per minute

api
hex_get_cells_by_cellid_outputREAD

Get Cell Output via GET /cells/{cellId}/output. **Unstable**: This endpoint is unstable API. Hex may make breaking changes to this endpoint without notice. Get the latest output preview for a SQL cell in the active draft notebook session. This endpoint is subject to the following rate limits: - `hex-api`: Default rate limit group for the Hex API - Max requests per minute may vary (default: 30) - Max requests per hour may vary (default: 1800)

api
hex_get_collectionsREAD

List Collections via GET /collections.

api
hex_get_collections_by_collectionidREAD

Get Collection via GET /collections/{collectionId}.

api
hex_get_context_topicsREAD

List Topics via GET /context/topics. List thread topics in the workspace, sorted by name. This endpoint is subject to the following rate limits: - `hex-api`: Default rate limit group for the Hex API - Max requests per minute may vary (default: 30) - Max requests per hour may vary (default: 1800)

api
hex_get_data_connectionsREAD

List Data Connections via GET /data-connections. List the workspace's data connections. This endpoint is subject to the following rate limits: - `hex-api`: Default rate limit group for the Hex API - Max requests per minute may vary (default: 30) - Max requests per hour may vary (default: 1800)

api
hex_get_data_connections_by_dataconnectionidREAD

Get Data Connection via GET /data-connections/{dataConnectionId}. Get a single data connection by its ID. This endpoint is subject to the following rate limits: - `hex-api`: Default rate limit group for the Hex API - Max requests per minute may vary (default: 30) - Max requests per hour may vary (default: 1800)

api
hex_get_groupsREAD

List Groups via GET /groups.

api
hex_get_groups_by_groupidREAD

Get Group via GET /groups/{groupId}.

api
hex_get_guides_draft_listREAD

List Draft Guides via GET /guides/draft/list. List draft guides This endpoint is subject to the following rate limits: - `hex-api-30rpm`: Rate limit group for the Hex API at 30 requests per minute - Max 30 requests per minute

api
hex_get_projectsREAD

List Projects via GET /projects. List all viewable projects, sorted by most recently created first.

api
hex_get_projects_by_projectidREAD

Get Project via GET /projects/{projectId}. Get metadata about a single project. This endpoint is subject to the following rate limits: - `hex-api`: Default rate limit group for the Hex API - Max requests per minute may vary (default: 30) - Max requests per hour may vary (default: 1800)

api
hex_get_projects_by_projectid_queriedtablesREAD

Get Queried Tables via GET /projects/{projectId}/queriedTables. Given a project ID, return the list of warehouse tables queried in the project.

api
hex_get_projects_by_projectid_runsREAD

Get Project Runs via GET /projects/{projectId}/runs. Get the status of runs of a project. By default, all run types are returned (API-triggered, scheduled, and publish/refresh runs). Use the `runTriggerFilter` parameter to filter to a specific type. This endpoint is subject to the following rate limits: - `hex-api`: Default rate limit group for the Hex API - Max requests per minute may vary (default: 30) - Max requests per hour may vary (default: 1800)

api
hex_get_projects_by_projectid_runs_by_runidREAD

Get Run Status via GET /projects/{projectId}/runs/{runId}. Get the status of a project run. This endpoint is subject to the following rate limits: - `hex-api`: Default rate limit group for the Hex API - Max requests per minute may vary (default: 30) - Max requests per hour may vary (default: 1800) `enable_expanded_stats` is sent as the `enable-expanded-stats` request header, not as a query parameter.

api
hex_get_projects_by_projectid_runs_by_runid_cells_by_staticid_imageREAD

Get Chart Image From Run via GET /projects/{projectId}/runs/{runId}/cells/{staticId}/image. Get the rendered PNG image of a chart cell from a completed run by staticCellId. The cell must have been executed and must not be in an error state. Only chart-type cells are supported. This endpoint is subject to the following rate limits: - `hex-chart-image`: Rate limits for rendering chart images - Max 20 requests per minute

api
hex_get_suggestionsREAD

List Suggestions via GET /suggestions. List context suggestions for the workspace. This endpoint is subject to the following rate limits: - `hex-api-30rpm`: Rate limit group for the Hex API at 30 requests per minute - Max 30 requests per minute

api
hex_get_suggestions_by_suggestionidREAD

Get Suggestion via GET /suggestions/{suggestionId}. Get a single context suggestion by id, including its evidence sources and the proposed changes from its most recent review run. This endpoint is subject to the following rate limits: - `hex-api-30rpm`: Rate limit group for the Hex API at 30 requests per minute - Max 30 requests per minute

api
hex_get_threadsREAD

List Threads via GET /threads. List agent threads in the workspace, sorted by most recently created first. Requires Manager org role or higher. Workspace admins receive every non-private thread; managers receive threads they created plus Threads-type threads on projects they have access to. Threads marked private are returned with their title redacted. This endpoint is subject to the following rate limits: - `hex-api`: Default rate limit group for the Hex API - Max requests per minute may vary (default: 30) - Max requests per hour may vary (default: 1800)

api
hex_get_threads_by_idREAD

Get Thread via GET /threads/{id}. Get the response of an agent thread. Returns the current status (RUNNING, IDLE, or ERROR) and the agent's response content when available. This endpoint is subject to the following rate limits: - `hex-api`: Default rate limit group for the Hex API - Max requests per minute may vary (default: 30) - Max requests per hour may vary (default: 1800)

api
hex_get_threads_by_threadid_messagesREAD

Get Thread Messages via GET /threads/{threadId}/messages. List the messages in an agent thread, rendered as a single flat list of text blocks. Within a page messages are chronological (oldest first); each text block is prefixed with the authoring role, and thinking and error blocks are tagged. Each block includes the creation time of its originating message. Tool-call, tool-result, and mention blocks are omitted, and inline references are left as raw tags. By default the most recent page is returned (matching the MCP get_thread tool); pass the `before` cursor to fetch older messages and `after` to fetch newer ones. Set `full` to include JSON-encoded message records with thinking, tool calls, results, and mentions. Supports cursor pagination with a maximum page size of 50. This endpoint is subject to the following rate limits: - `hex-api`: Default rate limit group for the Hex API - Max requests per minute may vary (default: 30) - Max requests per hour may vary (default: 1800)

api
hex_get_usersREAD

List Users via GET /users. List all users in the workspace This endpoint is subject to the following rate limits: - `hex-api-30rpm`: Rate limit group for the Hex API at 30 requests per minute - Max 30 requests per minute

api
hex_get_users_meREAD

Me via GET /users/me. Returns information about the current logged in user. User metadata will be omitted when authenticating with a workspace token. This endpoint is subject to the following rate limits: - `hex-api-30rpm`: Rate limit group for the Hex API at 30 requests per minute - Max 30 requests per minute

api
hex_patch_cells_by_cellidWRITE

Update Cell via PATCH /cells/{cellId}. Update a cell's source and/or data connection. For SQL cells, can update the SQL source, output dataframe, and data connection. For code and markdown cells, can update the source. Returns the updated cell. This endpoint is subject to the following rate limits: - `hex-api-30rpm`: Rate limit group for the Hex API at 30 requests per minute - Max 30 requests per minute

api
hex_patch_collections_by_collectionidWRITE

Edit Collection via PATCH /collections/{collectionId}.

api
hex_patch_data_connections_by_dataconnectionidWRITE

Edit Data Connection via PATCH /data-connections/{dataConnectionId}.

api
hex_patch_data_connections_by_dataconnectionid_schemaWRITE

Update Data Connection Schema via PATCH /data-connections/{dataConnectionId}/schema. Use this endpoint to add or remove a status (including endorsements) from databases, schemas, and tables within a data connection This endpoint uses atomic semantics - if any update in the batch fails validation, the entire request fails and no changes are applied

api
hex_patch_groups_by_groupidWRITE

Edit Group via PATCH /groups/{groupId}.

api
hex_patch_projects_by_projectidWRITE

Update Project via PATCH /projects/{projectId}. Add or remove a status, including endorsements, from a project. This endpoint is subject to the following rate limits: - `hex-api`: Default rate limit group for the Hex API - Max requests per minute may vary (default: 30) - Max requests per hour may vary (default: 1800)

api
hex_patch_projects_by_projectid_sharing_collectionsWRITE

Edit Project Sharing Collections via PATCH /projects/{projectId}/sharing/collections. Add a project to collections or remove it from collections. For projects, use `CAN_VIEW` to grant the UI permission labeled "Can explore". Use `APP_ONLY` to grant the UI permission labeled "Can view app". Workspace tokens calling this endpoint need to have "Collections -> Write access" scope in addition to "Projects -> Write access" scope. A personal access token (`hxtp_`) needs its own owner to hold those two permissions; a workspace token (`hxtw_`) needs them ticked in its Hex permission grid.

api
hex_patch_projects_by_projectid_sharing_groupsWRITE

Edit Project Sharing Groups via PATCH /projects/{projectId}/sharing/groups. Add groups to a project or update/remove their project sharing access. Use CAN_VIEW for the UI permission labeled "Can explore" and APP_ONLY for "Can view app". Use NONE to remove a group's access. This endpoint is subject to the following rate limits: - `hex-api`: Default rate limit group for the Hex API - Max requests per minute may vary (default: 30) - Max requests per hour may vary (default: 1800)

api
hex_patch_projects_by_projectid_sharing_usersWRITE

Edit Project Sharing Users via PATCH /projects/{projectId}/sharing/users. Add users to a project or update/remove their project sharing access. Use CAN_VIEW for the UI permission labeled "Can explore" and APP_ONLY for "Can view app". Use NONE to remove a user's access. This endpoint is subject to the following rate limits: - `hex-api-30rpm`: Rate limit group for the Hex API at 30 requests per minute - Max 30 requests per minute

api
hex_patch_projects_by_projectid_sharing_workspaceandpublicWRITE

Edit Project Sharing Org And Public via PATCH /projects/{projectId}/sharing/workspaceAndPublic. Update workspace or public-web sharing for a project. For projects, use CAN_VIEW to grant the UI permission labeled "Can explore" and APP_ONLY for "Can view app". Use NONE to remove access. Omitted fields are left unchanged. This endpoint is subject to the following rate limits: - `hex-api`: Default rate limit group for the Hex API - Max requests per minute may vary (default: 30) - Max requests per hour may vary (default: 1800)

api
hex_patch_semantic_models_by_semanticprojectidWRITE

Update Semantic Project (via /semantic-models) via PATCH /semantic-models/{semanticProjectId}. Use this endpoint to add or remove a status (including endorsements) from datasets and views within a semantic project This endpoint uses atomic semantics - if any update in the batch fails validation, the entire request fails and no changes are applied. Hex publishes this route as the regex alternation `/semantic-(projects|models)/{semanticProjectId}` in its own OpenAPI document; the literal alternation is NOT a route (404 NOT_FOUND, measured 2026-09-16) and both spellings are, answering 401 to a bogus token. This tool calls the spelling in its name; the other spelling is the same resource under an alias path, so either will do.

api
hex_patch_semantic_projects_by_semanticprojectidWRITE

Update Semantic Project (via /semantic-projects) via PATCH /semantic-projects/{semanticProjectId}. Use this endpoint to add or remove a status (including endorsements) from datasets and views within a semantic project This endpoint uses atomic semantics - if any update in the batch fails validation, the entire request fails and no changes are applied. Hex publishes this route as the regex alternation `/semantic-(projects|models)/{semanticProjectId}` in its own OpenAPI document; the literal alternation is NOT a route (404 NOT_FOUND, measured 2026-09-16) and both spellings are, answering 401 to a bogus token. This tool calls the spelling in its name; the other spelling is the same resource under an alias path, so either will do.

api
hex_post_cellsWRITE

Create Cell via POST /cells. Create a new cell in the draft version of a project This endpoint is subject to the following rate limits: - `hex-api-30rpm`: Rate limit group for the Hex API at 30 requests per minute - Max 30 requests per minute

api
hex_post_collectionsWRITE

Create Collection via POST /collections.

api
hex_post_data_connectionsWRITE

Create Data Connection via POST /data-connections.

api
hex_post_embedding_createpresignedurl_by_projectidWRITE

Create Presigned Url via POST /embedding/createPresignedUrl/{projectId}. Create an embedded url for a project

api
hex_post_groupsWRITE

Create Group via POST /groups.

api
hex_post_guides_publishWRITE

Publish Guide Drafts via POST /guides/publish. Publish all currently drafted guides.

api
hex_post_projectsWRITE

Create Project via POST /projects. Create a new project in the workspace with the specified title, and optionally a description. This endpoint is subject to the following rate limits: - `hex-api`: Default rate limit group for the Hex API - Max requests per minute may vary (default: 30) - Max requests per hour may vary (default: 1800)

api
hex_post_projects_by_projectid_runsWRITE

Run Project via POST /projects/{projectId}/runs. Trigger a run of the latest published version of a project. This endpoint is subject to the following rate limits: - `hex-run-kernel`: Rate limits for starting project runs or sending thread messages - Max requests per minute may vary - Max requests per hour may vary

api
hex_post_projects_exportWRITE

Export Project via POST /projects/export. Exports a Hex project in the *.hex.yaml format. Availability of this endpoint varies by organization. Contact Hex support to request access. This endpoint is subject to the following rate limits: - `hex-api`: Default rate limit group for the Hex API - Max requests per minute may vary (default: 30) - Max requests per hour may vary (default: 1800)

api
hex_post_semantic_models_by_semanticprojectid_ingestWRITE

Ingest Semantic Project (via /semantic-models) via POST /semantic-models/{semanticProjectId}/ingest. Ingest a semantic project from a zip file. This API endpoint is subject to a maximum of 3 requests per minute. Hex publishes this route as the regex alternation `/semantic-(projects|models)/{semanticProjectId}` in its own OpenAPI document; the literal alternation is NOT a route (404 NOT_FOUND, measured 2026-09-16) and both spellings are, answering 401 to a bogus token. This tool calls the spelling in its name; the other spelling is the same resource under an alias path, so either will do.

api
hex_post_semantic_projects_by_semanticprojectid_ingestWRITE

Ingest Semantic Project (via /semantic-projects) via POST /semantic-projects/{semanticProjectId}/ingest. Ingest a semantic project from a zip file. This API endpoint is subject to a maximum of 3 requests per minute. Hex publishes this route as the regex alternation `/semantic-(projects|models)/{semanticProjectId}` in its own OpenAPI document; the literal alternation is NOT a route (404 NOT_FOUND, measured 2026-09-16) and both spellings are, answering 401 to a bogus token. This tool calls the spelling in its name; the other spelling is the same resource under an alias path, so either will do.

api
hex_post_suggestions_by_suggestionidWRITE

Update Suggestion via POST /suggestions/{suggestionId}. Update the status of a context suggestion. This endpoint is subject to the following rate limits: - `hex-api-30rpm`: Rate limit group for the Hex API at 30 requests per minute - Max 30 requests per minute

api
hex_post_suggestions_by_suggestionid_changes_by_changeidWRITE

Update Suggestion Change via POST /suggestions/{suggestionId}/changes/{changeId}. Update the status of an individual proposed change within a context suggestion. The change is either a file update or a data-warehouse update, selected by `updateTarget`. This endpoint is subject to the following rate limits: - `hex-api-30rpm`: Rate limit group for the Hex API at 30 requests per minute - Max 30 requests per minute

api
hex_post_suggestions_by_suggestionid_reviewWRITE

Trigger Suggestion Review via POST /suggestions/{suggestionId}/review. Trigger a background review agent run for the given context suggestion. If a review is already in flight for this suggestion, returns the current run. This endpoint is subject to the following rate limits: - `hex-api-30rpm`: Rate limit group for the Hex API at 30 requests per minute - Max 30 requests per minute

api
hex_post_threadsWRITE

Create Thread via POST /threads. Start an agent thread with a prompt. The Hex agent will analyze data and respond to the prompt. The thread runs asynchronously — poll its status or visit the returned URL to view progress. Availability of this endpoint varies by organization. Contact Hex support to request access. This endpoint is subject to the following rate limits: - `hex-run-kernel`: Rate limits for starting project runs or sending thread messages - Max requests per minute may vary - Max requests per hour may vary

api
hex_post_threads_by_id_followupWRITE

Continue Thread via POST /threads/{id}/followup. Continue an existing agent thread with a follow-up prompt. This endpoint does not support queuing: the thread must be idle before a follow-up can be sent. Availability of this endpoint varies by organization. Contact Hex support to request access. This endpoint is subject to the following rate limits: - `hex-run-kernel`: Rate limits for starting project runs or sending thread messages - Max requests per minute may vary - Max requests per hour may vary

api
hex_post_users_by_userid_deactivateWRITE

Deactivate User via POST /users/{userId}/deactivate. Deactivate a user This endpoint is subject to the following rate limits: - `hex-api-30rpm`: Rate limit group for the Hex API at 30 requests per minute - Max 30 requests per minute Destructive and permanent; Hex offers no undo through this API.

api
hex_put_guides_draftWRITE

Upsert Guide Draft via PUT /guides/draft. Update or create guide drafts by filePath. Accepts a dictionary mapping file paths to their contents. For each file: - If the guide doesn't exist, it will be created. - If the guide exists but has no draft, a new draft will be created. - If the guide exists with a draft, the draft contents will be updated.

api

Put Hex behind one governed endpoint.

Same permissions, same audit trail, whatever else you connect next.