Marketing Automation
Segment
API integration
Ship Marketing Automation features without building the integration. Full Segment API access via Proxy, normalized data through Unified APIs, and 200+ MCP-ready tools for AI agents — all extensible to your exact use case.
Talk to usUse Cases
Why integrate with Segment
Common scenarios for SaaS companies building Segment integrations for their customers.
Sync Segment workspace structure into your multi-tenant app
If your SaaS organizes customers by accounts, teams, or workspaces, you can pull Segment's workspace, group, and user hierarchy into your product to automatically mirror your end-user's organizational structure without manual setup.
Push product events into your end-users' Segment pipelines
Your SaaS generates valuable events (e.g., survey completions, invoice payments, feature usage). By integrating with Segment, you let end-users route those events to their own data warehouses, CRMs, and analytics tools without any custom code on their side.
Ingest real-time user behavior data from Segment
Instead of asking customers to install another SDK, your product can receive Track, Identify, and Group calls directly from Segment — giving you rich behavioral data to power features like account health scoring, personalization, or usage-based billing.
Automate user provisioning based on Segment workspace membership
When end-users connect their Segment account, your app can read workspace members, roles, and groups to auto-provision users and assign permissions, reducing onboarding friction for team-based products.
Enrich your product's user profiles with Segment identity data
Pull unified user traits and group associations from Segment to augment your own user records, enabling richer segmentation, smarter defaults, and more relevant in-product experiences.
What You Can Build
Ship these features with Truto + Segment
Concrete product features your team can ship faster by leveraging Truto’s Segment integration instead of building from scratch.
Automatic workspace and team import
Let end-users connect Segment and instantly import their workspace hierarchy — including groups, users, and roles — so your product mirrors their org structure on day one.
Event forwarding to Segment
Ship a native 'Send to Segment' toggle that pushes your product's events (Track and Identify calls) into the end-user's Segment workspace using their Write Key.
Role-based access sync
Map Segment workspace roles to permission levels in your app so that admins, read-only users, and collaborators get the right access automatically.
Group-aware account dashboards
Use Segment's Group associations to build account-level views in your product, showing aggregated metrics and health scores per organization rather than per individual user.
Self-serve Segment connection via embedded auth
Embed Truto's auth flow so end-users can securely connect their Segment account from inside your app — no API keys copy-pasted over Slack.
SuperAI
Segment AI agent tools
Comprehensive AI agent toolset with fine-grained control. Integrates with MCP clients like Cursor and Claude, or frameworks like LangChain.
list_all_segment_users
List Segment users with access to the Workspace. Returns: id, name, email, permissions.
get_single_segment_user_by_id
Get a single Segment Workspace user by id. Returns: id, name, email, permissions. Required: id.
delete_a_segment_user_by_id
Delete a user from a Segment workspace by id. Returns: status. Required: id.
segment_users_attach_permission
Add a list of access permissions to a Segment user. Returns: roleId, roleName, resources. Required: user_id, userId, permissions.
segment_users_bulk_delete
Delete one or more Segment users in bulk by their ids. Returns: status. Required: userIds.
segment_users_bulk_delete_group
Remove users from a Segment user group by email address. Returns: status. Required: user_group_id, emails.
segment_users_bulk_update
Replace the members of a Segment user group with a new list of email addresses. Returns the updated group with id, name, memberCount, and permissions. Required: user_group_id, emails.
list_all_segment_roles
List Segment roles available to apply to permissions for users and groups. Returns: id, name, description.
update_a_segment_role_by_id
Replace the permission roles assigned to a Segment user. Returns the updated permissions under data, each including roleId, roleName, and resources. Required: userId, permissions.
list_all_segment_groups
List Segment user groups. Returns: memberCount, permissions, id, name.
get_single_segment_group_by_id
Get a Segment user group by id. Returns: memberCount, permissions, id, name. Required: id.
segment_groups_attach_permission
Add access permissions to a Segment user group. Returns the granted permissions with roleId, roleName, and resources. Required: user_group_id, userGroupId, permissions.
segment_groups_bulk_update
Replace all access permissions for a Segment user group. Returns the new permissions with roleId, roleName, and resources. Required: user_group_id, userGroupId, permissions.
create_a_segment_group
Create a user group in Segment. Returns the created group with id, name, and memberCount. Required: name.
delete_a_segment_group_by_id
Delete a user group from a Segment workspace by id. Returns: status. Required: id.
update_a_segment_group_by_id
Update a user group's name in Segment by id. Returns the updated group with id, name, and memberCount. Required: id, name.
list_all_segment_workspace
Get the Workspace in Segment associated with your API token. Returns: id, slug, name.
create_a_segment_activations_batch
Batch query Segment activations for a space, listing activations across many audiences in one bulk call instead of one request per audience. Returns: id, enabled, workspaceId, spaceId, audienceId, connectionId, and 3 more fields. Required: space_id, spaceId. Requires space_id and audienceIds. The workspace must have the Audience feature enabled.
create_a_segment_audience_destination_connection
Add a Destination to an Audience in Segment, creating a destination connection. Returns: id. The Destination must already be added to Engage via the Engage Settings page, and an Activation must be created to start syncing data. Required: space_id, audience_id, spaceId, audienceId, destination.
delete_a_segment_audience_destination_connection_by_id
Remove a Destination from an Audience in Segment by connection id. Returns: status. The request fails with a 409 Conflict if activations exist for the Destination. Required: id, space_id, audience_id, spaceId, audienceId, destinationId.
list_all_segment_audience_destination_connections
List all Destinations connected to an Audience in Segment. Returns: id, name, sourceId, enabled, createdAt, updatedAt, settings, destinationId, metadata, idSyncConfiguration, connectionSettings. Required: space_id, audience_id, space_id, audience_id.
update_a_segment_audience_destination_connection_by_id
Update the Destination connection for an Audience in Segment. Returns the connection with its destination id and idSyncConfiguration (externalId, strategy). The workspace must have the Audience feature enabled. Required: id, space_id, audience_id, spaceId, audienceId, destinationId.
create_a_segment_audience_schedule
Create a run schedule for a Linked Audience in Segment. Returns: id, strategy, config, nextExecution. Requires space_id, audience_id, strategy, and config. Schedules are only supported for Linked Audiences (audienceType = LINKED). Required: space_id, audience_id, spaceId, strategy, config.
delete_a_segment_audience_schedule_by_id
Delete an audience schedule from a Linked Audience in Segment. Returns: status. Requires space_id, audience_id, and id. Required: id, space_id, audience_id, spaceId, scheduleId.
get_single_segment_audience_schedule_by_id
Get a single audience schedule for an audience in Segment by id. Returns: id, strategy, config, nextExecution. Requires space_id, audience_id, and id. Required: id, space_id, audience_id, spaceId, scheduleId.
list_all_segment_audience_schedules
List all schedules configured for an audience in Segment. Returns: id, strategy, config, nextExecution. Requires space_id and audience_id. Required: space_id, audience_id, spaceId.
update_a_segment_audience_schedule_by_id
Update the run schedule for a Linked Audience in Segment. Returns: id, strategy, config, nextExecution. Requires space_id, audience_id, id, strategy, and config. Required: id, space_id, audience_id, spaceId, scheduleId, strategy, config.
create_a_segment_audiences_preview
Create an Audience Preview in a Segment space to evaluate an audience definition. Returns: id. The space's workspace must have the Audience feature enabled. Required: space_id, spaceId, definition, audienceType.
get_single_segment_audiences_preview_by_id
Get an Audience Preview by id in a Segment space to read its computed results. Returns: id, audienceType, definition, options, status, results, size, failureReason. Required: id, space_id, spaceId.
create_a_segment_destination_connection_activation
Create an Activation to sync a Segment audience to a destination connection. Returns: id, activationType, personalization, destinationMapping, and 8 more. The workspace must have the Audience feature enabled. Required: space_id, audience_id, connection_id, space_id, audience_id, connection_id, activationType, activationName, performResync.
create_a_segment_group_user
Add users or invites to a Segment user group by email. Returns the updated group including id, name, and memberCount. Required: user_group_id, userGroupId, emails.
list_all_segment_group_users
List the users belonging to a Segment user group. Returns: id, name, email. Required: user_group_id, userGroupId.
create_a_segment_regulations_cloudsource
Create a Cloud Source Regulation in Segment to suppress or delete end-user data scoped to a cloud source. Returns: regulateId. Regulations are processed asynchronously. Required: cloudsource_id, sourceId, regulationType, subjectType, subjectIds, collection.
segment_reverse_etl_model_syncs_cancel
Cancel a running Reverse ETL sync for a model in Segment. Returns: modelId, syncId, errorCode, errorMessage, status. Cancellation may take a few seconds to complete and the call errors if the sync already completed or was cancelled. Required: model_id, sync_id, modelId, syncId.
get_single_segment_reverse_etl_model_sync_by_id
Get the detailed sync status for a Reverse ETL sync in Segment, including extract and load phase results. Returns: syncId, modelId, sourceId, syncStatus, duration, startedAt, finishedAt, extractPhase, loadPhase, error, errorCode. Required: id, model_id, modelId, syncId.
segment_sources_attach_label
Add existing labels to a Segment Source. Returns the source's labels with their key, value, and description. Requires source_id and labels (an array of key/value pairs). Required: source_id, sourceId, labels.
segment_sources_bulk_update
Replace all labels in a Segment Source with the provided set. Returns the source's labels with their key, value, and description. Requires source_id and labels (an array of key/value pairs). Required: source_id, sourceId, labels.
create_a_segment_source
Create a new Source in Segment for a website or app you want to track. Returns the created source including its id, slug, name, writeKeys, enabled, metadata, settings, and labels. Required: slug, enabled, metadataId.
delete_a_segment_source_by_id
Delete a Segment Source by id. Returns: status. Required: id.
get_single_segment_source_by_id
Get a Segment Source by id. Returns the source including its id, slug, name, workspaceId, enabled, writeKeys, metadata, settings, and labels. Required: id.
list_all_segment_sources
List the Segment sources configured in your workspace. Returns for each source: id, slug, name, enabled, writeKeys, and metadata.
update_a_segment_source_by_id
Update an existing Segment source by id — rename it, change its slug or settings, or enable or disable it. Returns: id, slug, name, metadata, workspaceId, enabled, writeKeys, settings, labels. Required: id.
create_a_segment_space_audience
Create an audience in a Segment space. Returns the created audience including id, name, key, enabled, definition, status, and audienceType. The workspace must have the Audience feature enabled. Required: space_id, spaceId, name, definition, audienceType.
delete_a_segment_space_audience_by_id
Delete an audience from a Segment space by id. Returns: status. The workspace must have the Audience feature enabled. Required: id, space_id, spaceId.
get_single_segment_space_audience_by_id
Get an audience in a Segment space by id. Returns the audience including id, name, key, enabled, definition, status, size, and computeCadence. The workspace must have the Audience feature enabled. Required: id, space_id, spaceId.
list_all_segment_space_audiences
List audiences in a Segment space. Returns audiences with id, name, key, enabled, definition, status, size, and computeCadence. The workspace must have the Audience feature enabled. Required: space_id, spaceId.
update_a_segment_space_audience_by_id
Update an audience in a Segment space by id. Returns the updated audience including id, name, key, enabled, definition, status, and options. The audience is locked from further edits until the changes are incorporated, and the workspace must have the Audience feature enabled. Required: id, space_id, spaceId.
create_a_segment_space_computed_trait
Create a Computed Trait in a Segment space. Returns the created trait with id, name, key, definition, status, enabled, and createdAt. Requires space_id, name, and definition. Alpha API; API-created definitions are not editable in the Segment app. Required: space_id, spaceId, name, definition.
delete_a_segment_space_computed_trait_by_id
Delete a Computed Trait from a Segment space by id. Returns: status. Requires space_id and id. Alpha API. Required: id, space_id, spaceId.
get_single_segment_space_computed_trait_by_id
Get a Computed Trait by id in a Segment space. Returns: id, spaceId, name, description, key, enabled, definition, status, createdBy, updatedBy, createdAt, updatedAt, options. Requires space_id and id. Alpha API. Required: id, space_id, spaceId.
list_all_segment_space_computed_traits
List Computed Traits in a Segment space. Returns traits with id, name, key, definition, status, and enabled. Requires space_id. Alpha API. Required: space_id, spaceId.
update_a_segment_space_computed_trait_by_id
Update a Computed Trait by id in a Segment space. Returns: id, spaceId, name, description, key, enabled, definition, status, createdBy, updatedBy, createdAt, updatedAt, options. Requires space_id and id. The trait locks from further edits until changes are incorporated. Required: id, space_id, spaceId.
segment_tracking_plan_sources_bulk_delete
Remove a Source from a Tracking Plan in Segment. Returns: status. Required: tracking_plan_id, sourceId.
create_a_segment_tracking_plan_source
Connect a Source to a Tracking Plan in Segment. Returns: status. The workspace must have Protocols enabled. Required: tracking_plan_id, trackingPlanId, sourceId.
list_all_segment_tracking_plan_sources
List Sources connected to a Tracking Plan in Segment. Returns: id, slug, name, metadata, workspaceId, enabled, writeKeys, settings, labels. The workspace must have Protocols enabled. Required: tracking_plan_id, tracking_plan_id.
create_a_segment_warehouse_connected_source
Connect a Source to a Warehouse in Segment. Returns: status. Required: warehouse_id, connected_source_id, warehouseId, sourceId.
delete_a_segment_warehouse_connected_source_by_id
Disconnect a source from a Segment warehouse by removing its connection. Returns: status. Required: id, warehouse_id, warehouseId, sourceId.
list_all_segment_warehouse_connected_sources
List the sources connected to a Segment warehouse. Returns: id, slug, name, metadata, workspaceId, enabled, writeKeys, settings, labels. Required: warehouse_id, warehouse_id.
list_all_segment_credentials
List Segment credentials in the workspace. Returns each credential's id, workspaceId, name, settings, createdAt, and updatedAt.
create_a_segment_credential
Create a new Segment credential for a warehouse connection such as Snowflake. Returns the created credential with id, workspaceId, name, settings, createdAt, and updatedAt. Requires name and settings. Required: name, settings.
get_single_segment_credential_by_id
Get a Segment credential by id. Returns the credential's id, workspaceId, name, settings, createdAt, and updatedAt. Required: id.
update_a_segment_credential_by_id
Update a Segment credential by id; all warehouses using it are affected immediately. Returns the updated credential with id, workspaceId, name, settings, createdAt, and updatedAt. Required: id.
delete_a_segment_credential_by_id
Delete a Segment credential by id. Returns: status. Required: id. Fails with 409 Conflict if the credential is still in use by a warehouse or source (including a disabled one).
create_a_segment_customer_insights_download
Create a customer insights download in Segment for a collection and hour, generating presigned URLs to fetch the archived data files. Returns: urls. Required: collectionId, hour.
create_a_segment_dbt_model_syncs_trigger
Create a trigger for a new dbt model sync for a Segment Source. Returns the trigger object with its id, sourceId, and status. Required: sourceId.
list_all_segment_destinations
List Segment destinations. Returns: id, name, enabled, metadata, sourceId, settings.
create_a_segment_destination
Create a new Segment destination. Returns the created destination with its id, name, enabled, settings, metadata, and sourceId. Requires sourceId, metadataId, and settings.
segment_destinations_list_subscriptions
List subscriptions attached to a Segment destination. Returns: id, name, actionId, actionSlug, destination_id, enabled, settings, trigger, modelId, reverseETLSchedule. Required: destination_id, destination_id.
segment_destinations_attach_subscription
Create a subscription for a Segment destination. Returns the created subscription with id, name, actionId, actionSlug, enabled, and trigger. Limited to 5 requests per minute. Required: destination_id, name, actionId, trigger, enabled.
get_single_segment_destination_by_id
Get a single Segment destination by id. Returns: id, name, enabled, metadata, sourceId, settings. Required: id.
update_a_segment_destination_by_id
Update an existing Destination in Segment by id. Returns the updated destination including its id, name, enabled flag, settings, metadata, and sourceId. Required: id. Payloads that update only read-only settings fail; in mixed payloads the writable fields are updated and read-only ones ignored.
delete_a_segment_destination_by_id
Delete an existing Destination in Segment by id. Returns: status. Required: id.
list_all_segment_filters
List filters for a Segment space. Returns: id, workspaceId, integrationId, enabled, name, description, if, drop, createdAt, updatedAt. Required: integrationId. The workspace must have Space Filters enabled; the API is in beta.
create_a_segment_filter
Create a filter for a Segment space. Returns: id, workspaceId, integrationId, enabled, name, description, if, drop, createdAt, updatedAt, sourceId, destinationId, actions, title. Required: integrationId, name, and if (an FQL condition or "all"). Each space may have at most 10 filters; the API is in beta.
get_single_segment_filter_by_id
Get a filter for a Segment space by id. Returns: id, workspaceId, integrationId, enabled, name, description, if, drop, createdAt, updatedAt. Required: id. The workspace must have Space Filters enabled; the API is in beta.
update_a_segment_filter_by_id
Update a filter for a Segment space by id, replacing the existing filter. Returns: id, workspaceId, integrationId, enabled, name, description, if, drop, createdAt, updatedAt. Required: id, integrationId. The API is in beta.
segment_filters_partial_update
Update a filter for a Segment destination. Returns: id, sourceId, destination_id, if, actions, title, description, enabled, createdAt, updatedAt, integrationId, workspaceId, name. Required: destination_id, filter_id.
delete_a_segment_filter_by_id
Delete a Segment space filter by id. Returns: deleted. Required: id. The Filters API is in beta and the target workspace must have Space Filters enabled.
list_all_segment_filters_destination
List Segment destination filters for a destination. Returns: id, sourceId, destination_id, if, actions, title, description, enabled, createdAt, updatedAt. Required: destination_id.
create_a_segment_filters_destination
Create a filter for a Segment destination to drop, sample, or allow/drop event fields before delivery. Returns: id, sourceId, destination_id, if, actions, title, description, enabled, createdAt, updatedAt. Required: destination_id, sourceId, if, actions, title, enabled.
get_single_segment_filters_destination_by_id
Get a Segment destination filter by id. Returns: id, sourceId, destination_id, if, actions, title, description, enabled, createdAt, updatedAt. Required: id, destination_id.
delete_a_segment_filters_destination_by_id
Delete a destination filter from a Segment destination by id. Returns: status. Required: id, destination_id.
create_a_segment_function_deploy
Deploy a Segment Function, creating a function deployment for it. Returns the deployment result with its status (e.g. SUCCESS). Only applicable to Source Function instances. Required: function_id, functionId.
list_all_segment_functions
List Segment Functions in a workspace, filtered by Function type. Returns: id, resourceType, createdAt, createdBy, displayName, description, logoUrl, catalogId. The workspace needs Functions enabled. Required: resourceType.
create_a_segment_function
Create a Segment Function (custom Source or Destination in JavaScript) with optional settings. Returns the created Function including id, workspaceId, resourceType, displayName, code, settings, createdAt, and createdBy. Required: code, displayName, resourceType. The workspace needs the Functions feature enabled.
get_single_segment_function_by_id
Get a single Segment Function by id. Returns: id, resourceType, createdAt, createdBy, code, deployedAt, settings, displayName, description, logoUrl, previewWebhookUrl, batchMaxCount, catalogId, isLatestVersion. Required: id. The workspace needs Functions enabled.
update_a_segment_function_by_id
Update a Segment Function by id — modify its code, settings, displayName, logoUrl, or description. Returns the updated Function: id, displayName, resourceType, code, createdAt, settings. Required: id. The workspace needs Functions enabled.
delete_a_segment_function_by_id
Delete a Segment Function by id. Returns: status. Required: id. The workspace needs Functions enabled.
list_all_segment_insert_function_instances
List insert Function instances connected to a given insert Function class in Segment. Returns: id, name, integrationId, classId, enabled, createdAt, updatedAt, settings, encryptedSettings. Required: functionId. Workspace must have the Functions feature enabled.
create_a_segment_insert_function_instance
Create an insert Function instance connected to a given Destination in Segment. Returns: id, name, integrationId, classId, enabled, createdAt, updatedAt, settings, encryptedSettings. Required: functionId, integrationId, name, settings. Workspace must have the Functions feature enabled.
get_single_segment_insert_function_instance_by_id
Get an insert Function instance by id in Segment. Returns: id, name, integrationId, classId, enabled, createdAt, updatedAt, settings, encryptedSettings. Required: id. Workspace must have the Functions feature enabled.
update_a_segment_insert_function_instance_by_id
Update an insert Function instance by id in Segment. Returns: id, name, integrationId, classId, enabled, createdAt, updatedAt, settings, encryptedSettings. Required: id, settings. Workspace must have the Functions feature enabled.
delete_a_segment_insert_function_instance_by_id
Delete an insert Function instance by id in Segment. Returns: status. Required: id. Workspace must have the Functions feature enabled.
list_all_segment_invites
List invitations to join a Segment Workspace. Returns the list of invited email addresses.
create_a_segment_invite
Create invites for one or more users to join a Segment Workspace. Returns: emails (the addresses of the invited users). Required: invites.
segment_invites_bulk_delete
Delete invites from a Segment Workspace for the specified email addresses. Returns: status. Required: emails.
list_all_segment_labels
List all Labels in Segment. Labels grant users access to groups of resources such as Sources and Personas Spaces. Returns: key, value, description.
create_a_segment_label
Create a new Label in Segment. Returns: key, value, description. Requires label (an object with key, value, and description). Required: label.
segment_labels_bulk_delete
Delete a Label in Segment identified by its key and value. Returns: status. Required: key, value.
create_a_segment_live_plugins_create
Create or update a Live Plugin for a Segment source with the given code. Returns: id, sourceId, createdAt, createdBy, downloadURL, version, code. This endpoint is in Alpha. Required: source_id, sourceId, code.
list_all_segment_reverse_etl_models
List Reverse ETL models in Segment. Returns models with id, sourceId, name, description, enabled, query, and queryIdentifierColumn.
create_a_segment_reverse_etl_model
Create a Reverse ETL model in Segment for a warehouse source. Returns the created model with id, name, sourceId, enabled, query, and queryIdentifierColumn. Requires sourceId, name, description, enabled, query, and queryIdentifierColumn; optionally set a reverseETLSchedule (manual, periodic, specific_days, or cron strategy). Required: sourceId,…
get_single_segment_reverse_etl_model_by_id
Get a Reverse ETL model in Segment by id. Returns the model with id, sourceId, name, description, enabled, query, and queryIdentifierColumn. Required: id.
delete_a_segment_reverse_etl_model_by_id
Delete a Reverse ETL model in Segment by id. Returns a status field (SUCCESS on success). Required: id.
update_a_segment_reverse_etl_model_by_id
Update an existing Reverse ETL model in Segment by id. Returns the updated model with id, sourceId, name, description, enabled, query, and queryIdentifierColumn. Required: id.
create_a_segment_reverse_etl_sync
Trigger a manual sync for a Reverse ETL connection in Segment. Returns: startedAt, syncId. Required: sourceId, modelId, subscriptionId.
list_all_segment_space_profiles_warehouses
List Profiles Sync Warehouses configured for a Segment space. Returns each warehouse's id, space_id, workspaceId, enabled flag, metadata, and settings. Required: space_id, space_id.
create_a_segment_space_profiles_warehouse
Create a Profiles Sync Warehouse in a Segment space. Returns the created warehouse with id, space_id, workspaceId, enabled, metadata, and settings. Required: space_id, space_id, metadataId, settings.
update_a_segment_space_profiles_warehouse_by_id
Update an existing Profiles Sync Warehouse in a Segment space by id. Returns the updated warehouse including id, space_id, workspaceId, enabled, metadata, and settings. Required: id, space_id, space_id, warehouseId, settings.
delete_a_segment_space_profiles_warehouse_by_id
Delete a Profiles Sync Warehouse from a Segment space by id. Returns: status. Required: id, space_id, spaceId, warehouseId.
list_all_segment_api_calls_dailies
List daily cumulative workspace API call counts in Segment for a usage period. Returns: apiCalls, timestamp. 2021-02-01). Required: period.
delete_a_segment_audience_activation_by_id
Delete an activation from an audience in Segment. Returns: status. Required: id, space_id, audience_id, spaceId, audienceId.
get_single_segment_audience_activation_by_id
Get a single activation belonging to an audience in Segment. Returns: id, enabled, workspaceId, space_id, audience_id, connectionId, activationType, activationName, displayName, personalization, destinationMapping, performResync. Required: id, space_id, audience_id, space_id, audience_id.
update_a_segment_audience_activation_by_id
Update an activation for an audience in Segment, such as renaming it or toggling its enabled state. Returns: id, enabled, workspaceId, space_id, audience_id, connectionId, activationType, activationName, displayName, personalization, destinationMapping, performResync. Required: id, space_id, audience_id, space_id, audience_id.
list_all_segment_audience_activations
List all activations configured for an audience in Segment. Returns: id, enabled, workspaceId, space_id, audience_id, connectionId, activationType, activationName, displayName, personalization, destinationMapping, performResync. Required: space_id, audience_id, space_id, audience_id.
create_a_segment_audience_run
Force execute a run for a Segment audience. Returns the triggered run's id. Limited to Linked Audiences (audienceType = LINKED). Required: space_id, audience_id, spaceId, audienceId.
get_single_segment_catalog_destination_by_id
Get a single Destination catalog item in Segment by its id. Returns: id, name, description, slug, logos, options, status, categories, website, components, previousNames, supportedMethods, supportedPlatforms, supportedFeatures, actions, presets, contacts, partnerOwned, supportedRegions, regionEndpoints. Required: id.
list_all_segment_catalog_destinations
List all Destinations available in the Segment catalog. Returns each item's id, name, description, slug, logos, options, status, categories, supportedMethods, supportedPlatforms, and supportedFeatures. Defaults to 1000 per page.
list_all_segment_echos
Send a test echo through the Segment Public API to verify connectivity, versioning, and error handling. Returns: method, message, headers. Required: message.
create_a_segment_function_version
Restore an old Segment Function version as the latest version. Returns: id, author, code, isDeployed, createdAt, updatedAt, deployedAt. The Workspace must have the Functions feature enabled. Required: function_id, functionId, versionId.
get_single_segment_function_version_by_id
Get a single Segment Function version by id. Returns: id, author, code, isDeployed, createdAt, updatedAt, deployedAt. The Workspace must have the Functions feature enabled. Required: id, function_id, functionId, versionId.
list_all_segment_function_versions
List all versions of a Segment Function in a Workspace. Returns: id, author, code, isDeployed, createdAt, updatedAt, deployedAt. The Workspace must have the Functions feature enabled. Required: function_id, functionId.
segment_live_plugins_delete_codes_bulk_delete
Delete the Live Plugin code for a Segment source. Returns: status. Required: source_id.
list_all_segment_mtu_dailies
List daily cumulative MTU usage counts for a Segment workspace. Returns: dailyWorkspaceMTUUsage, pagination. Required: period (ISO-8601 start of the usage month, e.g. 2021-02-01).
create_a_segment_regulation
Create a Workspace-scoped regulation in Segment to delete and/or suppress end-user data by identifier. Returns: id, subjectType, createdAt, regulationType. Requires regulationType, subjectType, and subjectIds. Deletion and suppression run asynchronously. Required: regulationType, subjectType, subjectIds.
get_single_segment_regulation_by_id
Get a regulation from the Segment workspace by id. Returns: id, workspaceId, overallStatus, finishedAt, createdAt, streamStatus. Required: id.
list_all_segment_regulations
List Workspace-scoped regulations in Segment. Returns: id, subjectType, subjects, status, createdAt, regulationType, finishedAt. Only returns deletion requests from the past 90 days; older ones result in 404.
create_a_segment_regulations_source
Create a Source-scoped regulation in Segment to delete or suppress end-user data. Returns: regulateId. Runs asynchronously; Workspace-level suppression takes precedence over Source-level. Required: source_id, sourceId, regulationType, subjectType, subjectIds.
get_single_segment_regulations_source_by_id
List the regulations scoped to a Segment source. Returns: regulations, pagination. Required: id, sourceId. Only deletion requests from the past 90 days are retained; older ones return 404.
create_a_segment_source_writekey
Create a new Write Key for a Segment Source. Returns the updated Source object with its id, slug, name, workspaceId, enabled, and writeKeys (including the newly generated key). Required: source_id, sourceId.
delete_a_segment_source_writekey_by_id
Remove a write key from a Segment source. Returns: status. May generate a Source Modified event in the audit trail. Required: id, source_id, sourceId, writeKey.
list_all_segment_sources_dailies
List daily per-source MTU (monthly tracked users) usage snapshots in Segment for a usage month. Returns: dailyPerSourceMTUUsage, pagination. Required: period.
list_all_segment_sources_dailies_daily
List Segment's daily per-source API call usage, with one record per source per day. Returns: dailyPerSourceAPICallsUsage, pagination. Required: period.
segment_warehouse_advanced_sync_schedules_bulk_update
Replace the advanced sync schedule for a Segment warehouse. Returns the updated schedule: enabled plus a schedule object with per-hour sync times and timezone. Required: warehouse_id, enabled.
get_single_segment_warehouse_advanced_sync_schedule_by_id
Get the advanced sync schedule configured for a Segment warehouse by id. Returns: enabled, schedule. Required: id.
get_single_segment_warehouse_connection_state_by_id
Get the connection state of a Segment warehouse by id, verifying its warehouse connection settings. Returns: connectionState. Required: id.
create_a_segment_warehouses_validation
Validate input settings against a Segment warehouse, testing the connection before it is saved. Returns: status. Required: metadataId, settings.
list_all_segment_delivery_overview_failed_deliveries
Get Segment Delivery Overview metrics for events that failed to reach a Destination, bucketed by time. Returns: total, dataset, pagination. Required: sourceId, destinationConfigId, startTime, endTime, granularity.
list_all_segment_delivery_overview_failed_on_ingests
List events that failed on ingest from Segment's Delivery Overview. Returns: total, dataset, pagination. Granularity restricts the queryable time range (e.g. DAY allows up to 30 days). Required: sourceId, startTime, endTime, granularity.
list_all_segment_delivery_overview_filtered_at_destinations
List Segment Delivery Overview metrics for events that were filtered at destination, bucketed by the chosen time granularity. Returns: total, dataset, pagination. Granularity limits: minute 4h range/48h past, hour 14d/30d, day 30d/30d. Required: sourceId, destinationConfigId, startTime, endTime, granularity.
list_all_segment_delivery_overview_filtered_at_sources
List Segment Delivery Overview metrics for events that were filtered at Source. Returns: total, dataset, pagination. Required: sourceId, startTime, endTime, granularity. Granularity limits the queryable window: Minute max 4h, Hour max 14d, Day max 30d.
list_all_segment_delivery_overview_successful_deliveries
Get egress success metrics for events successfully delivered to a Segment destination. Returns: total, dataset, pagination. Required: sourceId, destinationConfigId, startTime, endTime, granularity. Query window is capped per granularity (DAY 30d, HOUR 14d, MINUTE 4h).
list_all_segment_events_volumes
List event volume time series for a Segment workspace, bucketed by the chosen granularity. Returns: path, query, result, pagination. Required: granularity, startTime, endTime.
create_a_segment_tracking_plan
Create a Tracking Plan in Segment. Returns: id, name, slug, description, type, updatedAt, createdAt. Requires name and type. The workspace needs the Protocols feature enabled. Required: name, type.
delete_a_segment_tracking_plan_by_id
Delete a Tracking Plan by id in Segment. Returns: status. Required: id. The workspace needs the Protocols feature enabled.
get_single_segment_tracking_plan_by_id
Get a Tracking Plan by id in Segment. Returns: id, name, slug, description, type, updatedAt, createdAt. Required: id. The workspace needs the Protocols feature enabled.
list_all_segment_tracking_plans
List Tracking Plans in Segment. Returns: id, name, slug, description, type, updatedAt, createdAt. The workspace needs the Protocols feature enabled.
update_a_segment_tracking_plan_by_id
Update a Tracking Plan in Segment by id. Returns the updated tracking plan including its id, name, slug, type, and updatedAt and createdAt timestamps. The workspace must have the Protocols feature enabled. Required: id.
create_a_segment_transformation
Create a new transformation in Segment to rename events, rename properties, or set property values. Returns the created transformation with id, name, sourceId, enabled, if, newEventName, propertyRenames, and propertyValueTransformations. Required: name, sourceId, enabled, if (FQL event matcher). Workspace must have Protocols enabled.
delete_a_segment_transformation_by_id
Delete a transformation in Segment by id. Returns: status. Required: id. Workspace must have Protocols enabled.
get_single_segment_transformation_by_id
Get a single transformation in Segment by id. Returns the transformation with id, name, sourceId, enabled, if, newEventName, propertyRenames, and propertyValueTransformations. Required: id. Workspace must have Protocols enabled.
list_all_segment_transformations
List all transformations in a Segment workspace. Returns transformations with id, name, sourceId, enabled, if, newEventName, propertyRenames, and propertyValueTransformations. Workspace must have Protocols enabled.
update_a_segment_transformation_by_id
Update an existing transformation in Segment by id. Returns the updated transformation with id, name, sourceId, enabled, if, propertyRenames, and propertyValueTransformations. Required: id. Workspace must have Protocols enabled.
create_a_segment_warehouse
Create a new Warehouse in Segment. Returns the created warehouse including its id, workspaceId, enabled status, metadata, and settings. Required: metadataId, settings.
delete_a_segment_warehouse_by_id
Delete an existing Warehouse in Segment by id. Returns: status. Required: id.
get_single_segment_warehouse_by_id
Get a single Warehouse in Segment by id. Returns: id, metadata, workspaceId, enabled, settings. Required: id.
list_all_segment_warehouses
List Warehouses in Segment. Returns each warehouse with its id, workspaceId, enabled status, metadata, and settings.
update_a_segment_warehouse_by_id
Update an existing Warehouse in Segment by id. Returns the updated warehouse including id, workspaceId, enabled status, metadata, and settings. Required: id, settings.
list_all_segment_audit_events
List Segment Audit Trail events, filterable by time range and resource. Returns: id, timestamp, type, actor, actorEmail, resourceId, resourceType, resourceName. The Audit Trail covers only the most recent 90 days.
list_all_segment_audience_audience_references
List audience references for a Segment audience in a space. Returns audience records including id, name, key, enabled, status, audienceType, and createdAt. Required: space_id, audience_id, spaceId.
get_single_segment_catalog_source_by_id
Get a single Source catalog item from Segment by its id. Returns: id, name, slug, description, logos, options, categories, isCloudEventSource, status, partnerOwned. Required: id.
list_all_segment_catalog_sources
List all available Sources in the Segment catalog. Returns: id, name, slug, description, logos, options, categories, isCloudEventSource, status, partnerOwned.
get_single_segment_catalog_warehouse_by_id
Get a single Warehouse catalog item from the Segment catalog by id. Returns: id, name, slug, description, logos, options. Required: id.
list_all_segment_catalog_warehouses
List all available Warehouses in the Segment catalog. Returns each catalog item with id, name, slug, description, logos, and options.
list_all_segment_connected_source_selective_syncs
List selective syncs for a Segment warehouse and connected source, showing which collections and properties are excluded from warehouse syncs. Returns each sync's sourceId, collection, warehouseId, and properties with enabled flags and type metadata. Required: warehouse_id, source_id, warehouseId, sourceId.
list_all_segment_credential_consumers
List the Warehouses and Sources that use a Credential in Segment. Returns: warehouses, warehousesPagination, sources, sourcesPagination. Required: credential_id, credential_id.
list_all_segment_destination_delivery_metrics
Get an event delivery metrics summary for a Segment destination. Returns: sourceId, destinationMetadataId, metrics. Granularity time-range limits: MINUTE 4h, HOUR 7d, DAY 14d. Required: destination_id, sourceId, destinationId.
delete_a_segment_destination_subscription_by_id
Delete a Destination subscription in Segment by id. Returns: status. Required: id, destination_id, destinationId.
get_single_segment_destination_subscription_by_id
Get a Destination subscription in Segment by id. Returns: id, name, actionId, actionSlug, destinationId, enabled, settings, trigger, modelId, reverseETLSchedule. Required: id, destination_id, destinationId.
update_a_segment_destination_subscription_by_id
Update a Destination subscription in Segment by id. Returns: id, name, actionId, actionSlug, destinationId, enabled, settings, trigger, modelId, reverseETLSchedule. Required: id, destination_id, destinationId, input.
list_all_segment_entitie_properties
List the properties defined for an entity in a Segment space. Returns: name, primaryKey, dataType, samples. Alpha endpoint with forward-only pagination. Required: space_id, entity_slug, spaceId, entitySlug.
list_all_segment_event_properties
List event properties tracked for a specific event in a Segment space. Returns: name, type, eventName, lastSeenAt, samples. Endpoint is in alpha. Required: space_id, event_name, spaceId, eventName.
list_all_segment_group_invites
List the email addresses of invitees to a Segment user group. Returns the invitee emails. Required: user_group_id, userGroupId.
segment_profiles_warehouse_selective_syncs_bulk_update
Update Selective Sync settings for a Segment Profiles Warehouse connection, enabling or disabling specific collections and properties. Returns: status. Required: space_id, warehouse_id.
list_all_segment_profiles_warehouse_selective_syncs
List Selective Syncs for a Segment Profiles Warehouse connection, returning the schema of collections and properties that sync from the warehouse. Returns: collection, warehouseId, enabled, properties. Required: space_id, warehouse_id, spaceId, warehouseId.
list_all_segment_propertie_sample_values
List sample values for an event property in a Segment space. Returns the array of sample values observed for that property (e.g. emails, numbers). This endpoint is in alpha. Required: space_id, event_name, property_name, propertyType, spaceId, entitySlug, propertyName.
list_all_segment_propertie_sample_values_sample_values
List sample values recorded for a property on an entity in a Segment space. Returns an array of observed values for the property (e.g. "a@example.com"). Required: space_id, entity_slug, property_name.
segment_source_settings_bulk_update
Update the schema settings of a Segment source: violation rules for track, group, and identify plus destinations for forwarding violations and blocked events. Returns: source_id, settings. Required: source_id. Protocols-specific updates are not applied when Protocols is not enabled.
list_all_segment_source_settings
Get the schema configuration settings of a Segment source: violation rules for track, group, and identify plus the destinations that receive forwarded violations and blocked events. Returns: source_id, settings. Required: source_id. Protocols-specific settings fall back to defaults when Protocols is not enabled.
get_single_segment_space_by_id
Get a Segment space (a Personas environment) by id. Returns: id, slug, name. Required: id. The workspace must have the Spaces feature enabled; this endpoint is in alpha.
list_all_segment_spaces
List Segment spaces (Personas environments). Returns: id, slug, name. The workspace must have the Spaces feature enabled; this endpoint is in alpha.
list_all_segment_spaces_events
List events tracked in a Segment space. Returns: name, type, lastSeenAt. Required: space_id.
segment_tracking_plan_rules_bulk_delete
Remove rules from a Segment tracking plan. Returns: status. Required: tracking_plan_id, rules.
list_all_segment_tracking_plan_rules
List the rules defined in a Segment tracking plan. Returns: type, key, jsonSchema, version, createdAt, updatedAt, deprecatedAt. Required: tracking_plan_id, trackingPlanId.
segment_tracking_plan_rules_bulk_update
Replace all rules in a Segment tracking plan with the given set. Returns: status. Required: tracking_plan_id, rules.
segment_tracking_plan_rules_partial_update
Update the rules of a Segment tracking plan; non-existent rules are added. Returns: status. Required: tracking_plan_id, rules.
list_all_segment_user_groups
List the Segment user groups the given user belongs to. Returns each group as a slim record with only id and name (member and permission details are not included). Required: user_id, user_id.
list_all_segment_connected_source_syncs
List syncs for a source connected to a Segment warehouse, returning an overview of each sync report. Returns: sourceId, start, end, status, duration, humanDuration, count, notices. Required: warehouse_id, source_id, warehouseId, sourceId.
list_all_segment_delivery_overview_successfully_receiveds
Get events successfully received by Segment from Delivery Overview. Returns: total, dataset, pagination. Required: sourceId, startTime, endTime, granularity. Granularity limits the queryable time range: minute up to 4h, hour up to 14d, day up to 30d.
get_single_segment_live_plugins_latest_by_id
Get the latest Live Plugins for a Segment Source by id. Returns: id, sourceId, createdAt, createdBy, downloadURL, version, code. Required: id. This Alpha endpoint requires the Workspace to have Live Plugins enabled.
list_all_segment_source_connected_destinations
List the Segment destinations connected to a source. Returns: id, name, enabled, metadata, sourceId, settings. Required: source_id, sourceId.
list_all_segment_source_connected_warehouses
List warehouses connected to a Segment source. Returns: id, metadata, workspaceId, enabled, settings. Required: source_id, source_id.
list_all_segment_space_entity_paths
List Segment entity paths for a space. Returns: id, entityName, pathName, entitySlug, relationshipSlugs, childRelationshipSlugs, parentRelationshipSlugPath. This endpoint is in alpha. Required: space_id, spaceId.
list_all_segment_space_traits
List Traits for a Segment Space. Returns: trait, type, lastSeenAt, samples. Alpha endpoint with forward-only pagination. Required: space_id, spaceId.
list_all_segment_supported_destinations
List the destinations that Segment has reviewed and validated for activation with an audience type, keyed by destination slug. Returns: name, slug, actions, facebook-custom-audiences, google-ads. The workspace must have the Audience feature enabled. Required: space_id, audience_type, spaceId, audienceType.
list_all_segment_suppressions
List suppressions in a Segment Workspace — the end users whose ongoing data collection is blocked, e.g. for GDPR/CCPA privacy requests. Returns: subjectType, subjectIds.
list_all_segment_syncs
List Reverse ETL sync statuses for a Segment model subscription. Returns each sync with its syncId, syncStatus, duration, sourceId, modelId, startedAt, finishedAt, extractPhase, and loadPhase. Required: model_id, subscription_id, modelId, subscriptionId.
list_all_segment_trait_sample_values
List sample values for a trait in a Segment Space. Returns an array of recorded sample values for the trait (e.g. email addresses). This endpoint is in alpha. Required: space_id, trait_key, spaceId, traitKey.
segment_warehouse_selective_syncs_bulk_update
Update Selective Sync settings for a Segment warehouse to stop syncing specific events or properties. Returns: status, warnings. Required: warehouse_id, syncOverrides.
list_all_segment_warehouse_syncs
List sync overview reports for every Source connected to a Segment Warehouse. Returns: sourceId, start, end, status, duration, humanDuration, count, notices. Required: warehouse_id, warehouseId.
create_a_segment_filters_preview
Preview a Segment Destination filter by simulating its application to a provided event payload. Returns: inputPayload, result. Required: filter, payload.
Why Truto
Why use Truto’s MCP server for Segment
Other MCP servers give you a static tool list for one app. Truto gives you a managed, multi-tenant MCP infrastructure across 950+ integrations.
Auto-generated, always up to date
Tools are dynamically generated from curated documentation — not hand-coded. As integrations evolve, tools stay current without manual maintenance.
Fine-grained access control
Scope each MCP server to read-only, write-only, specific methods, or tagged tool groups. Expose only what your AI agent needs — nothing more.
Multi-tenant by design
Each MCP server is scoped to a single connected account with its own credentials. The URL itself is the auth token — no shared secrets, no credential leaking across tenants.
Works with every MCP client
Standard JSON-RPC 2.0 protocol. Paste the URL into Claude, ChatGPT, Cursor, or any MCP-compatible agent framework — tools are discovered automatically.
Built-in auth, rate limits, and error handling
Tool calls execute through Truto’s proxy layer with automatic OAuth refresh, rate-limit handling, and normalized error responses. No raw API plumbing in your agent.
Expiring and auditable servers
Create time-limited MCP servers for contractors or automated workflows. Optional dual-auth requires both the URL and a Truto API token for high-security environments.
Unified APIs
Unified APIs for Segment
Skip writing code for every integration. Use Truto’s category-specific Unified APIs out of the box or customize the mappings with AI.
Unified User Directory API
Groups
Groups are a collection of users in the source application. In some applications, they might also be called Teams.
Roles
The Role object represents a role of a User.
Users
The User object represents a User.
Workspaces
Workspaces represent concepts like teams, workspaces, projects in apps that support them
How It Works
From zero to integrated
Start with Segment in a free sandbox, usually ready within one business day. No boilerplate, no maintenance burden.
Link your customer’s Segment account
Use Truto’s frontend SDK to connect your customer’s Segment account. We handle all OAuth and API key flows — you don’t need to create the OAuth app.
We handle authentication
Don’t spend time refreshing access tokens or figuring out secure storage. We handle it and inject credentials into every API request.
Call our API, we call Segment
Truto’s Proxy API is a 1-to-1 mapping of the Segment API. You call us, we call Segment, and pass the response back in the same cycle.
Unified response format
Every response follows a single format across all integrations. We translate Segment’s pagination into unified cursor-based pagination. Data is always in the result attribute.
FAQs
Common questions about Segment on Truto
Authentication, rate limits, data freshness, and everything else you need to know before you integrate.
What authentication method does the Segment integration use?
Segment's Public API uses OAuth 2.0 or personal access tokens for workspace-level operations. Truto handles the auth flow so your end-users can connect their Segment account without you managing token exchange or refresh logic.
Which Unified API does this integration map to?
Segment maps to Truto's Unified User Directory API, which provides standardized access to Groups, Roles, Users, and Workspaces. This lets you read and sync Segment's organizational structure using a consistent schema.
Are there specific Truto tools available for Segment today?
Segment tools are built on request. If you need specific API operations beyond what the Unified User Directory covers — such as Tracking API calls or Source/Destination management — contact Truto and they'll scope and build them for your use case.
How does Truto handle Segment's rate limits?
Truto manages rate limiting, retries, and pagination automatically. Segment's Public API enforces rate limits per workspace and per token; Truto respects these limits and queues requests so your integration doesn't hit throttling errors.
Can I use this integration to send Track or Identify events to Segment?
Segment's Tracking API (Track, Identify, Group, Page, Screen, Alias) is a core part of the product. While specific Truto tools for these methods are built on request, the underlying API fully supports pushing events programmatically using a workspace's Write Key.
What data can I read from Segment through the Unified User Directory API?
You can read workspace members (Users), their assigned roles (Roles), group associations (Groups), and workspace metadata (Workspaces). This gives you the organizational context needed to provision users and mirror team structures in your product.
From the Blog
Segment integration guides
Deep dives, architecture guides, and practical tutorials for building Segment integrations.
Segment
Get Segment integrated into your app
Our team understands what it takes to make a Segment integration successful. A short, crisp 30 minute call with folks who understand the problem.