Skip to content

Analytics · Beta

Lenses
API integration

Ship Analytics features without building the integration. Full Lenses API access via Proxy and 250+ MCP-ready tools for AI agents — extend models and mappings to fit your product.

Built for specific customer use cases. Issues are resolved quickly.

Talk to us
Lenses

Use Cases

Why integrate with Lenses

Common scenarios for SaaS companies building Lenses integrations for their customers.

01

Embed Kafka self-service in developer portals

Internal developer platforms can offer topic provisioning, ACL management, and connector deployment to their end users without exposing raw Kafka tooling. Truto handles the Lenses auth and API layer so you focus on the developer experience.

02

Sync streaming datasets into data catalogs

Data catalog and lineage products can ingest Kafka topics, schemas, and dataset tags from customer Lenses environments to treat streams as first-class documented assets alongside warehouses and lakes.

03

Automate data protection policies across streams

Data privacy and governance SaaS can push PII masking and obfuscation policies directly into customer Lenses environments whenever a new sensitive field is detected, extending compliance from data-at-rest to data-in-motion.

04

Monitor Kafka health and cost in observability tools

AIOps, observability, and FinOps platforms can pull message metrics, consumer state, and connector status from Lenses to surface consumer lag, zombie topics, and over-provisioned infrastructure to their customers.

05

Orchestrate approval-driven Kafka provisioning

Workflow and ITSM platforms can route Kafka topic and ACL requests through approval flows, then call Lenses to execute the provisioning once approved — turning streaming infra into a governed self-service resource.

What You Can Build

Ship these features with Truto + Lenses

Concrete product features your team can ship faster by leveraging Truto’s Lenses integration instead of building from scratch.

01

Topic and ACL provisioning workflows

Create Kafka topics, update ACLs in bulk, and apply user or client quotas programmatically from your product UI.

02

Kafka Connect connector lifecycle management

List, deploy, restart tasks, and delete Kafka Connect connectors so your users can manage integration pipelines without leaving your app.

03

Streaming data catalog sync

Pull datasets, schema keys and values, tags, and descriptions from Lenses to build a live inventory of a customer's streaming data contracts.

04

PII protection policy automation

Create and manage protection policies with obfuscation rules to apply masking on sensitive fields flowing through Kafka topics.

05

Approval-based topic and resource requests

Trigger proxy approvals and execute approval actions to gate new topic creation or connector changes behind reviewer sign-off.

06

Streaming metrics and consumer health dashboards

Surface message metrics, consumer group state, partition offsets, and audit logs to build monitoring or FinOps views over customer Kafka clusters.

SuperAI

Lenses 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_lenses_environments

List all Lenses environments. Returns a list of environment objects, each with id and content-type-specific fields.

create_a_lenses_environment

Create a new Lenses environment. Returns the newly created environment with its id and content-type-specific fields. Required: name, tier.

get_single_lenses_environment_by_id

Retrieves a single environment by name. Returns: name, display_name, lrn, id, created_at, tier, status, metadata. Required: id.

update_a_lenses_environment_by_id

Update a Lenses environment by id. Returns the updated environment object with its id and content-type-specific fields. Required: id.

delete_a_lenses_environment_by_id

Delete a Lenses environment by id. Returns an empty 204 response on success. Required: id.

list_all_lenses_environment_kafka_connections

List Kafka connections defined for a Lenses environment. Returns the connections array, each item with name, sourceType, and connectionStatus. Required: env_name.

get_single_lenses_environment_kafka_connection_by_id

Get a Kafka connection by id in Lenses. Returns the connection with name, sourceType, and connectionStatus. Required: id, env_name.

update_a_lenses_environment_kafka_connection_by_id

Upsert a Kafka connection in a Lenses environment. Returns the connection with name, sourceType, and connectionStatus. Required: id, env_name, auth.

delete_a_lenses_environment_kafka_connection_by_id

Delete a Kafka connection for a specific Lenses environment. Returns an empty 204 response on success. Required: id, env_name.

create_a_lenses_environment_renew_key

Renew the agent key for a Lenses environment. Generates a new key and invalidates the old. Returns the environment object with its id and environment-specific attributes. Required: name.

list_all_lenses_groups

List all groups in Lenses. Returns the collection of groups. No required parameters.

create_a_lenses_group

Create a new group in Lenses. Returns the created group with its name. Required: name.

get_single_lenses_group_by_id

Get a single Lenses group by name. Returns the group object. Required: id.

update_a_lenses_group_by_id

Updates a group. Returns: name, display_name, sso_name, lrn, id, created_at, description, roles. Required: id.

delete_a_lenses_group_by_id

Delete a group in Lenses by id. Returns an empty 204 response on success. Required: id.

list_all_lenses_users

List all users in Lenses. Returns each user record including its id and other Lenses user fields.

create_a_lenses_user

Create a new user in Lenses. Returns the created user record including its id and other Lenses user fields. Required: name.

get_single_lenses_user_by_id

Get a single user in Lenses by id. Returns the user record including its id and other Lenses user fields. Required: id.

update_a_lenses_user_by_id

Update a user in Lenses by id. Returns the updated user record including its id and other Lenses user fields. Required: id.

delete_a_lenses_user_by_id

Delete a user in Lenses by id. Returns an empty 204 response on success. Required: id.

list_all_lenses_users_me

Get the currently authenticated Lenses user. Returns the full user or service account object. No parameters required.

lenses_user_profiles_bulk_update

Update a user profile in Lenses. Returns the updated user object with content-type-specific fields. Required: name.

lenses_user_groups_bulk_update

Assign a Lenses user to exactly the provided groups, removing all other memberships. Returns the updated user object including id and attributes. Required: name.

list_all_lenses_users_settings

Get the current user's settings in Lenses. Returns the settings object.

lenses_users_settings_bulk_update

Update the current user's settings in Lenses. Returns the updated settings object.

list_all_lenses_oauth_2_authorizations

List OAuth2 authorizations (grants) for the current user in Lenses. Returns a list of authorization records, each containing id and attributes.

delete_a_lenses_oauth_2_authorization_by_id

Revoke an OAuth2 authorization grant for the current user in Lenses by id. Returns an empty 204 response on success. Required: id.

create_a_lenses_oauth_2_authorize

Create an OAuth2 authorization in Lenses to authorize the client to act on behalf of the requesting principal. Returns the authorization response object. Required: client_id, redirect_uri, response_type, scope, state.

create_a_lenses_login

Start a Lenses session using username and password. Returns an empty 204 response on success. The session id is returned in a set-cookie header. Required: username, password.

lenses_users_sessions_bulk_delete

Delete all sessions associated with the current user in Lenses. Returns an empty 204 response on success.

list_all_lenses_service_accounts

List all service accounts in Lenses. Returns: items.

create_a_lenses_service_account

Create a new service account in Lenses. Returns: name, display_name, id, lrn, created_at, description, groups, token_expires_at, token_expired, last_seen_at, is_admin, metadata, token, secretToken, attributes. Required: name.

get_single_lenses_service_account_by_id

Get a specific service account in Lenses by id. Returns: name, display_name, id, lrn, created_at, description, groups, token_expires_at, token_expired, last_seen_at, is_admin, metadata. Required: id.

update_a_lenses_service_account_by_id

Update a service account in Lenses by id. Returns: name, display_name, id, lrn, created_at, description, groups, token_expires_at, token_expired, last_seen_at, is_admin, metadata, attributes. Required: id.

delete_a_lenses_service_account_by_id

Delete a service account in Lenses by id. Returns an empty 204 response on success. Required: id.

create_a_lenses_service_account_renew_token

Renew a Lenses service account token, invalidating the current token and generating a new one. Returns the service account with the new secret token, including name, token, and metadata. Required: name.

lenses_service_account_groups_bulk_update

Assign a Lenses service account to exactly the provided groups, removing it from all other groups. Returns the updated service account object including its id and upstream-defined attributes. Required: name.

list_all_lenses_roles

List all roles in Lenses. Returns the role list with name and policy for each entry.

create_a_lenses_role

Create a new role in Lenses. Returns the created role including name and policy. Required: name, policy.

get_single_lenses_role_by_id

Get a specific Lenses role by id. Returns the role object including its name and permission policy. Required: id.

update_a_lenses_role_by_id

Update a role in Lenses. Returns the role object including its id and content-type-specific attributes. Required: id.

delete_a_lenses_role_by_id

Delete a role in Lenses by id. Returns an empty 204 response on success. Required: id.

create_a_lenses_role_policy

Add a permission statement to an existing role's policy in Lenses. No deduplication is performed. Returns the updated role object. Required: name, effect, action, resource.

list_all_lenses_meta_infos

Get Lenses backend meta information. Returns: version, build_id, backend_build_id, ui_build_id, goos, goarch, started_at, memstats_alloc, memstats_sys, gc_cpu_fraction, num_goroutine.

list_all_lenses_settings

Get the Lenses backend application settings. Returns the application settings object in the attributes field.

list_all_lenses_licences

Get the Lenses HQ licence. Returns the licence object with id and content-type-specific attributes.

list_all_lenses_licence_summaries

Get HQ's licence summary in Lenses. Returns the licence summary object with upstream-defined fields.

list_all_lenses_audit_logs

List audit log records in Lenses. Returns the matching audit log entries sorted by timestamp (most recent first by default). Optional filters: from, to, principal, operation_id, and sort_order.

lenses_audit_logs_bulk_delete

Delete audit log records in Lenses up to the given timestamp. Returns an empty 204 response on success. Required: before.

list_all_lenses_permissions_definitions

List the static Lenses permission model definitions. Returns the definitions object including id and attributes.

list_all_lenses_apps_k_2_ks

List all K2K apps in Lenses. Returns: items. Optional: expand_metrics_summary.

get_single_lenses_apps_k_2_k_by_id

Retrieves a single K2KApp by name. Returns: apiVersion, kind, metadata, spec, status, metrics. Required: id.

create_a_lenses_apps_k_2_k

Create a new K2K app in Lenses. Returns the created app object including id and attributes. Requires a K2K app definition payload in the request body. Required: apiVersion, kind, metadata, spec.

update_a_lenses_apps_k_2_k_by_id

Create or replace a K2KApp in Lenses. Returns the K2KApp object including its id, name, and app-specific attributes. Required: id, apiVersion, kind, metadata, spec.

lenses_apps_k_2_ks_partial_update

Update an existing K2KApp in Lenses. Returns the updated K2KApp object including its id, name, and app-specific attributes. Required: id, apiVersion, kind, metadata, spec.

delete_a_lenses_apps_k_2_k_by_id

Delete a K2K app in Lenses by id. Returns the deleted K2K app object including its id and content-type-specific attributes. Required: id.

list_all_lenses_position_offsets

List the current committed consumer group offsets for a K2K application in Lenses. Returns the consumer group offsets response with content-type-specific fields (id, attributes). Optional: query to filter topics by name. Required: name.

lenses_position_offsets_bulk_update

Update the committed offsets for multiple topic partitions in a Lenses K2K application. Returns a success confirmation when the offsets are updated. The application must be stopped before calling; the update is atomic. Required: name.

lenses_position_timestamps_bulk_update

Update the committed offsets for a Lenses K2K application by resolving a single timestamp to offsets. Returns: application_name, timestamp, updated_partitions, skipped_partitions. The request body contains a timestamp and a map of topic names to partition numbers; the application must be stopped before calling. Required: name, timestamp, partitions.

list_all_lenses_k_2_k_migration_templates

Render a K2K app migration template in Lenses. Returns the generated K2K app template object with content-type-specific fields. Required: consumer_group_lrn, source_connection_lrn, target_connection_lrn, deployment_namespace_lrn.

list_all_lenses_k_2_k_migrations

List all K2K migrations in Lenses. Returns a list of migration records, each including id and schema-defined attributes.

get_single_lenses_k_2_k_migration_by_id

Get a single Lenses K2K migration by its unique name. Returns the migration object including id and schema-defined attributes. Required: id.

create_a_lenses_k_2_k_migration

Create a new K2K migration in Lenses. Returns the created migration object including id and schema-defined attributes. Required: name, k2k_app, consumer_group_id.

update_a_lenses_k_2_k_migration_by_id

Update a K2K migration in Lenses. Returns the updated migration object including id and schema-defined attributes. Required: id, status.

delete_a_lenses_k_2_k_migration_by_id

Delete a K2K migration in Lenses by id. Returns an empty 204 response on success. Required: id.

list_all_lenses_environment_proxies

Expose the Lenses proxy prefix for an environment. Any sub-path, method, and body are forwarded to the Lenses instance, and the response shape is controlled by the upstream endpoint. Required: environment.

create_a_lenses_environment_proxy

Proxy a request to a Lenses environment via the generic proxy endpoint. Returns the upstream response body with environment-specific fields. Required: environment, sql.

list_all_lenses_connection_connection_templates

List connection templates in Lenses. Returns the template records including id and attributes. Deprecated: use provisioning instead. Required: environment.

get_single_lenses_connection_by_id

Get a Lenses connection by id. Returns the connection object including name, sourceType, connectionStatus, and lrn. Required: id, environment.

create_a_lenses_connection

Create a new Lenses connection. Returns the created connection object including name, sourceType, connectionStatus, and lrn. Required: environment, name, templateName.

update_a_lenses_connection_by_id

Update an existing Lenses connection by id. Returns the updated connection object including name, sourceType, connectionStatus, and lrn. Required: id, environment.

delete_a_lenses_connection_by_id

Delete a Lenses connection by id. Returns an empty 204 response on success. Required: id, environment.

create_a_lenses_connections_test

Validate a connection in Lenses. Returns an empty 204 response on success. A request body is required; its shape is defined upstream by the Lenses connection type. Required: environment, name, templateName.

create_a_lenses_connection_template_test

Test a connection from a Lenses connection template. Required: environment, api_version, template_type.

list_all_lenses_kafka_connections

List Kafka connections available in a Lenses environment. Returns an array of connection summaries with name, sourceType, and connectionStatus. Required: environment, api_version.

get_single_lenses_kafka_connection_by_id

Get a specific Kafka connection by id in Lenses. Returns the connection object with name, sourceType, and connectionStatus. Required: environment, api_version, id.

create_a_lenses_kafka_connection

Create a new Kafka connection in Lenses. Returns the connection creation response with the connection name. Required: environment, api_version, and a request body.

update_a_lenses_kafka_connection_by_id

Update a Kafka connection in Lenses. Returns the connection update response with the connection name. Required: environment, api_version, id, name, and a request body.

delete_a_lenses_kafka_connection_by_id

Delete a Kafka connection in Lenses. Returns an empty 204 response on success. Required: environment, api_version, id, name.

list_all_lenses_schema_registry_connections

List available Schema Registry connections in Lenses. Returns: name, sourceType, connectionStatus. Required: environment, api_version.

get_single_lenses_schema_registry_connection_by_id

Get a Schema Registry connection by id in Lenses. Returns the connection including name, sourceType, and connectionStatus. Required: id, environment, api_version.

create_a_lenses_schema_registry_connection

Create a new Schema Registry connection in Lenses. Returns the created connection including name, sourceType, and connectionStatus. Required: environment, api_version.

update_a_lenses_schema_registry_connection_by_id

Update a Schema Registry connection in Lenses. Returns the updated connection including name, sourceType, and connectionStatus. Required: id, environment, api_version.

delete_a_lenses_schema_registry_connection_by_id

Delete a Schema Registry connection in lenses by id. Returns an empty 204 response on success. Required: id (the connection name) and environment.

list_all_lenses_aws_glue_schema_registry_connections

List available AWS Glue Schema Registry connections in a Lenses environment. Returns an array of connection summaries with name, sourceType, and connectionStatus. Required: environment.

get_single_lenses_aws_glue_schema_registry_connection_by_id

Get an AWS Glue Schema Registry connection by id in a Lenses environment. Returns the connection summary including name, sourceType, and connectionStatus. Required: environment, id.

create_a_lenses_aws_glue_schema_registry_connection

Create a new AWS Glue Schema Registry connection in a Lenses environment. Returns the connection creation response. Required: environment and the connection configuration in the request body.

update_a_lenses_aws_glue_schema_registry_connection_by_id

Update an AWS Glue Schema Registry connection by id and name in a Lenses environment. Returns the updated connection response. Required: environment, id, name, and the connection configuration in the request body.

delete_a_lenses_aws_glue_schema_registry_connection_by_id

Delete an AWS Glue Schema Registry connection by id and name in a Lenses environment. Returns an empty 204 response on success. Required: environment, id, name.

list_all_lenses_kafka_connect_connections

List available Kafka Connect connections in Lenses. Returns connection summaries including name, sourceType, and connectionStatus. Required: environment, api_version.

get_single_lenses_kafka_connect_connection_by_id

Get a specific Kafka Connect connection by id in Lenses. Returns the connection summary including name, sourceType, and connectionStatus. Required: environment, api_version, id.

create_a_lenses_kafka_connect_connection

Add a new Kafka Connect connection in Lenses. Returns the created connection summary including name, sourceType, and connectionStatus. Required: environment and api_version.

update_a_lenses_kafka_connect_connection_by_id

Update a Kafka Connect connection in Lenses by id. Returns the updated connection summary including name, sourceType, and connectionStatus. Required: id, environment, and api_version.

delete_a_lenses_kafka_connect_connection_by_id

Delete a Kafka Connect connection in Lenses. Returns an empty 204 response on success. Required: id, environment, api_version, name.

list_all_lenses_zookeeper_connections

List Zookeeper connections in Lenses. Returns: id. Required: environment, api_version.

get_single_lenses_zookeeper_connection_by_id

Get a Zookeeper connection by id in Lenses. Returns: id, attributes, connections. Required: environment, api_version, id.

create_a_lenses_zookeeper_connection

Create a Zookeeper connection in Lenses. Returns: id. Required: environment, api_version, and a request body.

update_a_lenses_zookeeper_connection_by_id

Update a Zookeeper connection by id in Lenses. Returns: id. Required: environment, api_version, id, and a request body.

delete_a_lenses_zookeeper_connection_by_id

Delete a Zookeeper connection by id in Lenses. Returns an empty 204 response on success. Required: environment, api_version, id.

list_all_lenses_alert_events

List alert events in Lenses. Returns a page of alert events with values, pagesAmount, and totalCount. Required: environment.

get_single_lenses_setting_condition_by_id

Get a single alert condition in Lenses. Returns the condition details including createdAt, createdBy, modifiedAt, modifiedBy, channels, condition, and conditionDsl. Required: id, environment, alert_setting_id.

update_a_lenses_setting_condition_by_id

Update an alert condition in Lenses. Returns an empty 204 response on success. Required: id, environment, alert_setting_id, condition.

delete_a_lenses_setting_condition_by_id

Delete an alert condition in Lenses. Returns an empty 204 response on success. Required: id, environment, alert_setting_id.

create_a_lenses_setting_condition

Create a new alert condition in Lenses. Returns the created condition including createdAt, createdBy, modifiedAt, modifiedBy, channels, condition, and conditionDsl. Required: environment, alert_setting_id, condition.

list_all_lenses_alert_settings

Get Lenses alert settings grouped by category. Returns categories: a map of category names to alert-setting records with id, description, category, enabled, isAvailable, details, and lrn. Required: environment.

update_a_lenses_alert_setting_by_id

Update a fixed alert setting in Lenses by id. Returns the updated alert setting including id, description, category, enabled, isAvailable, details, and lrn. Required: id, environment, enabled.

lenses_alert_settings_partial_update

Partially update a fixed alert setting in Lenses by id. Returns the updated alert setting including id, description, category, enabled, isAvailable, details, and lrn. Required: id, environment.

list_all_lenses_alert_channels

List alert channels in Lenses. Returns a paginated response containing values, pagesAmount, and totalCount. Required: environment.

create_a_lenses_alert_channel

Create a new alert channel in Lenses. Returns the created channel's id. Required: environment, name, templateName, connectionName.

get_single_lenses_alert_channel_by_id

Get alert channel details in Lenses by id. Returns: id, name, templateName, templateVersion, connectionName, properties, createdAt, createdBy, updatedAt, updatedBy, enabled, lrn. Required: id, environment.

update_a_lenses_alert_channel_by_id

Update an alert channel in Lenses by id. Returns an empty 200 response on success. Required: id, environment, name, connectionName.

lenses_alert_channels_partial_update

Patch an alert channel in Lenses by id. Returns an empty 200 response on success. Required: id, environment.

delete_a_lenses_alert_channel_by_id

Delete an alert channel in Lenses by id. Returns an empty 204 response on success. Required: id, environment.

list_all_lenses_alert_channel_templates

List alert channel templates in Lenses. Returns: id, name, templateVersion, version, enabled, builtIn, metadata, configuration, suitableConnections, jsonSchema. Required: environment.

list_all_lenses_proxy_audits

List audit entries in Lenses. Returns a paged list of audit records including id, timestamp, user, action, and resource type. Required: environment.

lenses_proxy_audits_bulk_delete

Delete Lenses audit entries up to a given timestamp. Returns an empty 204 response on success. Required: environment, timestamp.

list_all_lenses_audit_values

Get audit metadata information for a Lenses environment. Returns the metadata object with id and attributes. Required: environment.

list_all_lenses_audit_channels

List audit channels in a Lenses environment. Returns a paginated response with `values`, `pagesAmount`, and `totalCount`. Required: environment.

create_a_lenses_audit_channel

Create an audit channel in a Lenses environment. Returns the new channel's `id`. Provide name, templateName, connectionName, and properties in the body. Required: environment, name, templateName, connectionName.

get_single_lenses_audit_channel_by_id

Get an audit channel in a Lenses environment by id. Returns the channel details including id, name, templateName, connectionName, properties, createdAt, and enabled. Required: id, environment.

update_a_lenses_audit_channel_by_id

Update an audit channel in a Lenses environment by id. Returns an empty 204 response on success. Provide name, connectionName, and properties in the body. Required: id, environment, name, connectionName.

lenses_audit_channels_partial_update

Partially update an audit channel in a Lenses environment by id. Returns an empty 204 response on success. Provide name, connectionName, enabled, and properties in the body. Required: id, environment.

delete_a_lenses_audit_channel_by_id

Delete a Lenses audit channel by id. Returns an empty 204 response on success. Required: id, environment.

list_all_lenses_audit_channel_templates

List audit channel templates in Lenses. Returns: id, templateVersion, version, enabled, builtIn, metadata, configuration, suitableConnections, jsonSchema. Required: environment.

list_all_lenses_proxy_quotas

List Kafka client quotas in Lenses. Returns an array of quota objects, each containing id and attributes. Required: environment.

update_a_lenses_quotas_user_by_id

Create or update a Kafka quota for a specific user in Lenses by sending a hashmap of quota property name/values. Returns an empty response on success. Required: id, environment.

delete_a_lenses_quotas_user_by_id

Delete quota properties for a specific user in Lenses. Provide an optional list of property names in the body to delete specific properties. Returns an empty response on success. Required: id, environment.

lenses_quotas_users_bulk_update

Create or update the default Kafka quota for all users in a Lenses environment by sending a hashmap of quota property name/values. Returns an empty response on success. Required: environment.

lenses_quotas_users_bulk_delete

Delete default Kafka quota properties for all users in a Lenses environment. Provide an optional list of property names in the body to delete specific properties. Returns an empty response on success. Required: environment.

update_a_lenses_quotas_client_by_id

Set or update a Kafka quota for a specific client in Lenses. Returns an empty 204 response on success. Required: id, environment.

delete_a_lenses_quotas_client_by_id

Delete quota properties for a specific client in Lenses. Returns an empty 204 response on success. Required: id, environment.

lenses_quotas_clients_bulk_update

Set or update the default Kafka quota for all clients in Lenses. Returns an empty 204 response on success. Required: environment.

lenses_quotas_clients_bulk_delete

Delete default quota properties for all clients in Lenses. Returns an empty 204 response on success. Required: environment.

lenses_user_clients_bulk_update

Set the default Kafka quota for all clients of a specific user in Lenses. Returns an empty 204 response on success. Required: environment, username.

lenses_user_clients_bulk_delete

Delete default Kafka quota properties for all clients of a specific user in Lenses. Returns an empty 204 response on success. Required: environment, username.

update_a_lenses_user_client_by_id

Create or update a Kafka quota for a specific user and client in Lenses. Returns an empty 204 response on success. Required: id, environment, username.

delete_a_lenses_user_client_by_id

Delete Kafka quota properties for a specific user and client in Lenses. Returns an empty 204 response on success. Required: id, environment, username.

list_all_lenses_proxy_acls

List Kafka Access Control Lists in Lenses. Returns an array of ACL objects; each includes id and content-type-specific attributes. Required: environment.

lenses_proxy_acls_bulk_update

Create or update a Kafka Access Control List in Lenses. Returns an empty 200 response on success. Required: environment, resourceType, resourceName, principal, permissionType, host, operation.

lenses_proxy_acls_bulk_delete

Remove a Kafka Access Control List in Lenses. Returns an empty 200 response on success. Required: environment, resourceType, resourceName, principal, permissionType, host, operation, lrn.

list_all_lenses_topic_broker_configs

List broker configuration settings for a Kafka topic in Lenses. Returns the deprecated broker-config array with configuration-specific fields such as name, value, and default. Required: environment, topic.

update_a_lenses_configs_topic_by_id

Update configuration settings for a Kafka topic in Lenses. Returns a plain string response. Required: id, environment.

list_all_lenses_proxy_topics

List Kafka topics summary. Returns: topicName, lrn, partitions, replication, isControlTopic, isCompacted, keyType, valueType. Required: environment.

get_single_lenses_proxy_topic_by_id

Get a Kafka topic summary in Lenses. Returns the topic summary object. Deprecated. Required: id, environment.

create_a_lenses_proxy_topic

Create a Kafka topic in Lenses. Returns the created topic identifier as a plain string. Required: environment, topicName, configs.

delete_a_lenses_proxy_topic_by_id

Delete a Kafka topic in Lenses. The topic will be marked for deletion. Returns a plain string response from the upstream API. Required: id, environment.

delete_a_lenses_topic_message_by_id

Delete records from a Kafka topic partition in Lenses up to a specific offset. Returns a plain string response on success. Required: id, environment, topic_name, partition.

list_all_lenses_topic_partitions

List the partitions of a Kafka topic in Lenses. Returns a list of partition objects, each containing id and attributes. Required: environment, api_version, and topic.

lenses_topic_partitions_bulk_update

Increase the number of partitions for a Kafka topic in Lenses. Returns the partition increase details including partitions. Required: id, environment, partitions.

update_a_lenses_consumer_partition_offset_by_id

Update the consumer group offset for a specific topic-partition in Lenses. Returns an empty 200 response on success. Required: id, environment, group_id, topic.

list_all_lenses_kafka_topics

List deprecated Kafka topic details in Lenses. Returns a list of short topic summaries, each containing an id and topic-specific attributes. Required: environment, api_version. Deprecated; use /api/v1/datasets instead.

get_single_lenses_kafka_topic_by_id

Get a single Kafka topic record from Lenses by id. Returns: type, data, rowId, statementIndex. Required: environment, api_version, and id.

create_a_lenses_kafka_topic

Create a Kafka topic in Lenses. Returns an empty 204 response on success. Required: environment, name, configs, format.

create_a_lenses_topic_restore

Restore Kafka topic from S3. Returns: id, connector, cluster. Required: environment, topic_id, cluster, s3, storageFormat.

list_all_lenses_schema_keys

Get the Kafka topic key schema in Lenses. Returns the schema object including its attributes. Required: environment, topic.

list_all_lenses_schema_values

Get the value schema for a Kafka topic in Lenses. Returns the schema object including its id and content-type-specific attributes. Required: environment, topic.

create_a_lenses_backup

Backup Kafka topic to S3. Returns: id, connector, cluster. Required: environment, topic_id, cluster, s3.

list_all_lenses_metadata_topics

List all Kafka topic metadata in Lenses. Returns an array of topic metadata objects, each with id and attributes. Required: environment.

get_single_lenses_metadata_topic_by_id

Get metadata for a specific Kafka topic in Lenses. Returns the topic metadata object including id and attributes. Required: id, environment.

create_a_lenses_metadata_topic

Create or update metadata for a Kafka topic in Lenses. Returns an empty 204 response on success. Required: environment, topicName, keyType, valueType.

delete_a_lenses_metadata_topic_by_id

Delete metadata for a specific Kafka topic in Lenses. Returns an empty 204 response on success. Required: id, environment.

list_all_lenses_topic_policies

Get the configured Kafka topic policy in Lenses. Returns the policy object with its upstream-defined attributes. A default policy is returned if none exists. Required: environment.

lenses_topic_policies_bulk_update

Set or update the Kafka topic policy in Lenses by submitting a policy payload. Returns an empty 204 response on success. Required: environment, config.

list_all_lenses_static_obfuscations

List available static obfuscation types in Lenses. Returns an array of obfuscation type name strings. Required: environment.

list_all_lenses_static_impacts

List data policy impact level types in Lenses. Returns an array of impact type strings. Required: environment.

list_all_lenses_static_categories

List policy categories in Lenses. Returns an array of category name strings. Required: environment.

list_all_lenses_protection_policies

List data policies in Lenses. Returns a collection of data policy objects, each including its id. Required: environment.

create_a_lenses_protection_policy

Create a new data policy in Lenses. Returns a plain text identifier from the upstream API. Required: environment, name, category, impactType, obfuscation.

get_single_lenses_protection_policy_by_id

Get a single data policy in Lenses by id. Returns the data policy object including its id. Required: id, environment.

update_a_lenses_protection_policy_by_id

Update an existing data policy in Lenses. Returns an empty 204 response on success. Required: id, environment, name, category, impactType, obfuscation.

delete_a_lenses_protection_policy_by_id

Delete a data policy in Lenses. Returns an empty 204 response on success. Required: id, environment.

create_a_lenses_protection_policy_default

Load the default set of Lenses data policies covering common PII fields and obfuscation rules into an environment. Returns an empty 200 response on success. Required: environment.

list_all_lenses_proxy_approvals

List approval requests in a Lenses environment. Returns a paginated collection of request objects; each contains id and content-type-specific attributes. Required: environment.

create_a_lenses_proxy_approval

Create a new approval request in Lenses. Returns the created request id. Required: environment.

get_single_lenses_proxy_approval_by_id

Get a single Lenses approval request by id. Returns the request object with id and content-type-specific attributes. Required: id, environment.

create_a_lenses_approval_action

Perform an action on a Lenses approval request. Returns an empty 204 response on success. Required: environment, approval_id, action.

list_all_lenses_proxy_datasets

List datasets in a Lenses environment. Returns a paginated wrapper with `datasets.values` (each containing name, connectionName, sourceType, records, lrn) and `sourceTypes`. Required: environment.

get_single_lenses_proxy_dataset_by_id

Get a single dataset in Lenses by connection and id. Returns the dataset object including name, connectionName, sourceType, records, partitions, and lrn. Required: id, environment, connection.

create_a_lenses_dataset_tag

Set one or more tags on a dataset in Lenses. Returns an empty 200 response on success. Required: environment, connection, dataset_name.

create_a_lenses_description

Set a dataset description in Lenses. Returns an empty 200 response on success. Blank descriptions are rejected with a 400 error. Required: environment, connection, dataset_name.

create_a_lenses_datasets_delete

Bulk delete multiple datasets in Lenses. Returns a result list with id, success, and optional message for each deletion. Required: environment.

list_all_lenses_datasets_tags

List dataset tags in Lenses, sorted by dataset count. Returns the tags array, each item with name and count. Required: environment.

list_all_lenses_datasets_connections

List available dataset connections in Lenses. Returns a `connections` array where each entry contains name, sourceType, and connectionStatus. Required: environment.

list_all_lenses_kafka_topic_names

List Kafka topic names in Lenses. Returns an array of Kafka topic names the authenticated user is authorized to see. Required: environment.

list_all_lenses_schema_registry_subject_names

List Schema Registry subject names in Lenses. Returns an array of subject name strings. Required: environment.

list_all_lenses_sr_configs

Get the default Schema Registry configuration for a Lenses environment. Returns the default Schema Registry configuration object. Required: environment.

lenses_sr_configs_bulk_update

Set the default Schema Registry compatibility mode in Lenses. Returns an empty 204 response on success. Required: environment, compatibility.

list_all_lenses_sr_formats

Get the set of schema formats used by Schema Registry subjects in a Lenses environment. Returns: formats, data. Required: environment.

create_a_lenses_config

Set the Schema Registry compatibility mode for a specific subject in Lenses. Returns an empty 204 response on success. Required: environment, subject_name, compatibility.

create_a_lenses_current_version

Register a new Schema Registry schema version for a subject in Lenses, creating the subject if it does not exist. Returns the registered schema object. Required: environment, subject_name, schema.

delete_a_lenses_version_by_id

Delete a Schema Registry subject version in Lenses. Returns an empty 204 response on success. Required: id, environment, subject_name.

delete_a_lenses_sr_subject_by_id

Delete a Schema Registry subject in Lenses. Returns an empty 204 response on success. Required: id, environment.

list_all_lenses_messages_metrics

List ranged message metrics for a Kafka dataset in Lenses. Returns an array of daily message metric objects with content-specific attributes. Required: environment, entity_name.

list_all_lenses_proxy_consumers

List Kafka consumer groups in Lenses. Returns an array of consumer group summaries with basic group info. Deprecated. Required: environment.

lenses_proxy_consumers_bulk_delete

Delete a consumer group in Lenses. Returns an empty response on success. Required: environment, consumer_group_name.

lenses_consumer_offsets_bulk_update

Update consumer group offsets. Required: environment, group_id.

lenses_partition_offsets_bulk_delete

Delete consumer offsets for a specific topic partition in Lenses. Returns an empty 204 response on success. Required: environment, group_id, topic, partition.

create_a_lenses_consumer_offset_delete

Delete multiple consumer group offsets in Lenses. Returns an empty 200 response on success. Required: environment, consumer_id, topics.

list_all_lenses_schema_infers

Get the current status of a JSON to Avro schema inference job for a Kafka topic in Lenses. Returns the schema inference job state including its id and upstream-defined attributes. Required: environment, topic_name.

create_a_lenses_schema_infer

Start an on-demand JSON to Avro schema inference job for a Kafka topic in Lenses. Returns the schema inference job state including its id and upstream-defined attributes. Required: environment, topic_name, fromTimestamp.

lenses_schema_infers_bulk_delete

Cancel an active JSON to Avro schema inference job for a Kafka topic in Lenses. Returns an empty 200 response on success. Required: environment, topic_name.

list_all_lenses_infer_limits

Get the server-configured hard limits for Kafka schema inference jobs in Lenses. Returns an attributes object containing the configured limits, including max records and max bytes. Required: environment.

create_a_lenses_proxy_file

Upload a file to a Lenses environment. Returns the uploaded file metadata including id, filename, uploadedBy, uploadedAt, size, and contentType. Required: environment.

create_a_lenses_apps_external

Register or update an external app in Lenses. The request body matches the upstream ExternalApplicationRequest schema. Returns an empty 200 response on success. Required: environment, name, metadata.

delete_a_lenses_apps_external_by_id

Delete an external app in Lenses. This action removes the external app and all its instances. Required: id, environment.

lenses_runners_bulk_delete

Bulk delete runners in a Lenses environment and app. Returns an empty 204 response on success. Required: environment, app_name, runners.

list_all_lenses_proxy_streams

List SQL processors in Lenses. Returns processor records including their ids and content-type-specific attributes. Required: environment, api_version.

create_a_lenses_proxy_stream

Create a SQL processor in Lenses by submitting a processor registration payload. Returns the new processor id. Required: environment, api_version.

get_single_lenses_proxy_stream_by_id

Get a SQL processor in Lenses by id (legacy endpoint). Returns the processor record including its id and content-type-specific attributes. Required: environment, api_version, id.

delete_a_lenses_proxy_stream_by_id

Delete a SQL processor in Lenses by id. Returns the deleted processor id. Required: environment, api_version, id. Use force=true to bypass state checks.

create_a_lenses_stream_action

Execute a stream action on a Lenses stream by environment, stream id, and action name. Returns the action-specific response object. Required: environment, stream_id, action.

list_all_lenses_stream_graphs

Get the DAG graph for a Lenses SQL processor. Returns the graph object including id and upstream-defined attributes. Required: environment, stream_id.

create_a_lenses_stream_scale

Scale a Lenses SQL processor stream in the target environment. Returns a plain string response. Only available for Kubernetes deployments; scale must be a positive integer. Required: environment, stream_id, scale.

create_a_lenses_stream_image

Change SQL Processor Docker Image. Returns: id. Required: environment, stream_id, image.

create_a_lenses_app_description

Set the description for a Lenses application. Returns an empty 204 response on success. Required: environment, app_id.

create_a_lenses_app_tag

Set the tags on a Lenses application. Annotates the app with a non-empty list of tags, each tag must be non-blank and no longer than 255 characters. Returns an empty 204 response on success. Required: environment, app_id.

list_all_lenses_apps_tags

List application tags in Lenses. Returns a single object containing the tags array. Required: environment.

list_all_lenses_downloads

Download the logs of a running Kubernetes pod in Lenses. Returns the raw pod logs as a plain-text string. Required: environment, cluster, namespace, pod.

list_all_lenses_deployment_targets

List deployment targets for a Lenses environment. Returns cluster and deployment info including id, lrn, and environment-specific attributes. Required: environment.

list_all_lenses_sql_queries

List all currently active SQL snapshot queries in a Lenses environment. Returns each execution's id and an attributes object containing the upstream agent_ExecutionView fields (query ID, SQL statement, start time, and progress). Required: environment.

delete_a_lenses_sql_execution_by_id

Cancel an in-progress SQL snapshot query execution in Lenses. Returns an empty 204 response on success. Required: id, environment.

list_all_lenses_sql_pagings

List partition-level offset (paging) details for a Kafka table in Lenses. Returns an array of paging records; each record includes an id and upstream-defined partition offset attributes. Required: environment, table.

create_a_lenses_sql_presentation

Get snapshot SQL Intellisense from Lenses. Returns code-completion, syntax-validation, and schema-suggestion fields specific to the upstream presentation schema. Required: environment, sql.

create_a_lenses_streams_kafka

Get legacy Streaming SQL Intellisense for Kafka topics in Lenses. Returns: completions, errors, and metadata. Required: environment, api_version. Legacy endpoint; use V2 for enhanced topic metadata.

list_all_lenses_admin_loggers

List all registered loggers in a Lenses environment. Returns the loggers collection and the current logging mode (file or runtime). Required: environment.

lenses_admin_loggers_bulk_update

Set the log level for a specific logger in a Lenses environment, entering runtime mode. Returns the updated logger details including name, explicit level, effective level, and current mode. Required: environment, loggerName, level.

get_single_lenses_admin_logger_by_id

Get a specific logger in Lenses by name. Returns: name, level, effectiveLevel, effective_level. Required: id, environment.

list_all_lenses_loggers_presets

List available log presets in Lenses. Returns a list of log preset objects, each containing id and attributes. Required: environment.

update_a_lenses_loggers_preset_by_id

Apply a log preset in Lenses, reloading the corresponding XML config and re-enabling auto-reload. Returns the applied preset object with id and attributes.g. default, debug, debug-kafka). Required: id, environment.

list_all_lenses_loggers_status

Get logging status in Lenses. Returns: mode. Required: environment.

list_all_lenses_proxy_metadata

Get the metadata object for a Lenses environment. Returns the metadata record including id and attributes. Required: environment.

get_single_lenses_s_3_backup_by_id

Get a Lenses S3 backup/restore item by id. Returns the item including id and upstream-defined attributes. Required: id, environment.

delete_a_lenses_s_3_backup_by_id

Delete a Lenses S3 backup/restore item by id. Returns an empty 204 response on success. Required: id, environment.

list_all_lenses_s_3_backups

List all Lenses S3 backup/restore items. Returns an array of items, each including id and upstream-defined attributes. Required: environment.

list_all_lenses_proxy_states

Get the Lenses provisioning state information. Deprecated in favor of GET /api/v1/state/connections. Required: environment.

list_all_lenses_state_connections

Get the raw provisioning.yaml file contents for a Lenses environment. Returns the raw provisioning YAML content as a string. Required: environment.

create_a_lenses_connections_upload

Upload a complete connection provisioning manifest in Lenses. Sends the YAML manifest plus referenced files to the scanner folder, replacing the entire connection state. Returns the provisioning validation response including id and content-type-specific attributes. Required: environment.

create_a_lenses_validate_upload

Validate a provisioning manifest with uploaded files in Lenses without applying changes. Returns the provisioning validation response with upstream-defined fields. Required: environment.

get_single_lenses_connector_by_id

Get the current target definition for a Kafka Connect connector in Lenses. Returns the connector definition document including id and connector-specific attributes. Required: id, environment, connect_cluster_name.

list_all_lenses_connector_clas_schemas

Get the JSON schema for a connector resource in Lenses. Returns the connector resource JSON schema in the attributes object. Required: environment, connect_cluster_name, connector_clas_id.

lenses_proxy_resources_bulk_update

Apply a YAML resource spec to a Lenses environment. Returns an empty 201 response on success. Required: environment.

create_a_lenses_resource_resource_file_upload

Apply a resource spec from a binary file in Lenses. Returns an empty 201 response on success. Required: environment.

create_a_lenses_resource_validate

Validate a connector resource spec in Lenses without creating or updating it. Returns the validation result object; its `attributes` hold the upstream schema-defined fields. Required: environment.

list_all_lenses_kafka_connect_connectors

List all Kafka Connect connectors in Lenses, optionally filtered by cluster and connector class name. Returns the list of connector items, each with id and attributes. Required: environment.

create_a_lenses_kafka_connect_connector

Create a new Kafka Connect connector in Lenses with the specified configuration. Returns the created connector object including its id and attributes. Required: environment, name, cluster, configuration.

get_single_lenses_cluster_connector_by_id

Get a Kafka Connect connector by id in Lenses. Returns the connector details including name, lrn, cluster, state, config, and tasks. Required: id, environment, cluster.

delete_a_lenses_cluster_connector_by_id

Delete a Kafka Connect connector in Lenses and stop all of its tasks. Returns the deletion result including id and attributes. Required: id, environment, cluster.

create_a_lenses_cluster_connector

Perform a connector action on a Kafka Connect connector in Lenses. Returns the action response object including openapi, info, tags, security, components, and paths. Required: environment, cluster, connector, action.

create_a_lenses_task_restart

Restart a specific connector task in Lenses. Returns an empty 204 response on success. Required: environment, cluster, connector, task_id.

list_all_lenses_kafka_connect_plugins

List connector plugins installed across Kafka Connect clusters in Lenses. Returns the response data from the upstream plugins endpoint. Required: environment.

list_all_lenses_connector_topics

List the topic names a connector has used in Lenses since its creation or last active-topic reset. Returns an array of topic names. Required: environment, cluster, connector.

list_all_lenses_cluster_info

Get information about a Lenses Kafka Connect cluster. Returns the Connect cluster info including name. Required: environment, cluster.

list_all_lenses_connector_offsets

Get connector offsets in Lenses. Returns source partitions and offsets for source connectors, or Kafka topic/partition offset information for sink connectors. Required: environment, cluster, connector.

lenses_connector_offsets_bulk_update

Alter the offsets for a Kafka Connect connector in Lenses. Returns the alteration result. The connector must be in the STOPPED state. Required: environment, cluster, connector.

lenses_connector_offsets_bulk_delete

Reset a connector's offsets in a Lenses Kafka Connect cluster. This permanently removes the connector's offset data; the connector must be in the STOPPED state. Returns an empty response envelope. Required: environment, cluster, connector.

list_all_lenses_live_sses

Stream Lenses environment updates over Server-Sent Events. Returns an SSE event stream with event-type-specific payloads. Required: api_version.

list_all_lenses_k_2_k_live_sses

Subscribe to a live Server-Sent Events (SSE) stream for K2K application updates in Lenses. Returns an event stream of K2KApp change events.

create_a_lenses_topic_resend

Resend a Kafka message in Lenses by environment, topic, partition, and offset. Returns the resend result including partition and offset. Required: environment, topic, partition, topic_id.

Why Truto

Why use Truto’s MCP server for Lenses

Other MCP servers give you a static tool list for one app. Truto gives you a managed, multi-tenant MCP infrastructure across 600+ integrations.

01

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.

02

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.

03

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.

04

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.

05

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.

06

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.

How It Works

From zero to integrated

Go live with Lenses in under an hour. No boilerplate, no maintenance burden.

01

Link your customer’s Lenses account

Use Truto’s frontend SDK to connect your customer’s Lenses account. We handle all OAuth and API key flows — you don’t need to create the OAuth app.

02

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.

03

Call our API, we call Lenses

Truto’s Proxy API is a 1-to-1 mapping of the Lenses API. You call us, we call Lenses, and pass the response back in the same cycle.

04

Unified response format

Every response follows a single format across all integrations. We translate Lenses’s pagination into unified cursor-based pagination. Data is always in the result attribute.

FAQs

Common questions about Lenses on Truto

Authentication, rate limits, data freshness, and everything else you need to know before you integrate.

How does authentication to a customer's Lenses environment work?

Lenses uses a login flow to issue a session token, and also supports service accounts with renewable tokens for machine-to-machine access. Truto manages token acquisition, storage, and renewal so your product only deals with a stable connected account.

Can we manage Kafka Connect connectors through the integration?

Yes. You can list connectors and plugins, create new connectors, fetch a single connector, restart tasks, manage connector offsets, and delete connectors — covering the full connector lifecycle.

What governance and security operations are supported?

You can create and manage protection policies for data obfuscation, manage roles and role policies, bulk update ACLs, manage user and client quotas, and read audit logs for compliance reporting.

Can we read schemas and dataset metadata for a data catalog use case?

Yes. Lenses exposes proxy datasets, dataset tags, descriptions, Kafka topic names, schema registry subjects, schema keys and values, and schema inference — enough to build a full streaming catalog view.

Does the integration support real-time or streaming events?

Lenses exposes live SSE endpoints for both general events and K2K migrations. For most CRUD-style resources, Truto returns data on request; you can poll on your preferred cadence to keep your product in sync.

Are approval workflows for topic creation supported?

Yes. You can list and create proxy approvals, fetch a single approval, and execute approval actions — allowing your product to model request-and-approve flows before executing operations like topic creation or ACL changes.

Lenses

Get Lenses integrated into your app

Our team understands what it takes to make a Lenses integration successful. A short, crisp 30 minute call with folks who understand the problem.