---
title: Groove API Integration on Truto
slug: groove
category: Helpdesk
canonical: "https://truto.one/integrations/detail/groove/"
---

# Groove API Integration on Truto



**Category:** Helpdesk  
**Status:** Beta

## MCP-ready AI tools

Truto exposes 73 tools for Groove that AI agents can call directly.

- **list_all_groove_tickets** — List tickets in Groove. Returns fields such as number, created_at, updated_at, summary, tags, message_count, and links for each ticket.
- **get_single_groove_ticket_by_id** — Get a specific ticket in Groove by id. Returns fields such as number, title, status links, assigned_group, created_at, updated_at, and summary.
- **create_a_groove_ticket** — Create a new ticket in Groove. Requires body, from, and to. Returns ticket number, href, and links to assignee, customer, state, and messages.
- **list_all_groove_messages** — List all messages for a given ticket_number in Groove. Returns message details including created_at, updated_at, note, body, plain_text_body, href, and links information.
- **get_single_groove_message_by_id** — Get details of a specific message in Groove using id. Returns created_at, updated_at, note, body, plain_text_body, and related links for author, recipient, and ticket.
- **create_a_groove_message** — Create a new message in Groove for a specific ticket using ticket_number. Requires body. Returns message details including id, body, author, and sent_at.
- **list_all_groove_customers** — List customers in Groove. Returns key fields including href (resource URL), email, name, company_name, phone_number, and related ticket links.
- **get_single_groove_customer_by_id** — Get details about a specific customer in Groove using id. Returns href, links, email, name, contact info, and custom fields for the customer.
- **update_a_groove_customer_by_id** — Update a customer's information in Groove using id (email). Returns updated customer fields such as email, name, about, company_name, phone_number, and any custom attributes.
- **list_all_groove_ticket_counts** — List ticket counts in Groove grouped by folder ID. Returns folder IDs as keys and ticket counts as integer values.
- **list_all_groove_mailboxes** — List all mailboxes in Groove. Returns id, name, email, and related folder links for each mailbox.
- **list_all_groove_folders** — List all folders in Groove. Returns folder id and name for each folder.
- **list_all_groove_agents** — List agents in Groove. Returns key fields such as email, first_name, last_name, href, and ticket links for each agent.
- **get_single_groove_agent_by_id** — Get information about a specific agent in Groove using id (agent email). Returns email, first_name, last_name, href, and related tickets link.
- **list_all_groove_groups** — List all groups in Groove. Returns each group's id, name, and related agents link in the response.
- **get_single_groove_group_by_id** — Get information about a specific group in Groove using id. Returns fields including id, name, description, agent_ids, and related agents link.
- **create_a_groove_group** — Create a new group in Groove using the required name parameter. Returns group details including id, name, description, agent_ids, and related links in the response.
- **update_a_groove_group_by_id** — Update a specific group in Groove using id. Returns id, name, description, agent_ids, and links with agents href in the response.
- **delete_a_groove_group_by_id** — Delete a specific group in Groove using id. Returns the group's id, name, description, links to related agents, and agent_ids in the response.
- **list_all_groove_knowledge_bases** — List all knowledge bases in Groove. Returns fields such as id, title, created_at, enabled, subdomain, and site_url for each knowledge base.
- **get_single_groove_knowledge_base_by_id** — Get details of a specific knowledge base in Groove using id. Returns fields such as title, site_url, language, created_at, and enabled status for the knowledge base.
- **create_a_groove_knowledge_base** — Create a new knowledge base in Groove using required parameters: subdomain, title, and theme_id. Returns id, title, subdomain, site_url, and created_at fields representing the created knowledge base.
- **update_a_groove_knowledge_base_by_id** — Update a specific knowledge base in Groove. Requires id. Returns fields such as id, title, language, subdomain, site_url, theme_id, and updated_at that describe the updated knowledge base details.
- **delete_a_groove_knowledge_base_by_id** — Delete a specific knowledge base in Groove using id. Returns a 204 No Content response upon successful deletion.
- **list_all_groove_knowledge_base_themes** — List available knowledge base themes in Groove. Returns id, name, description, screenshot_url, created_at, and updated_at for each theme.
- **list_all_groove_knowledge_base_settings** — Get knowledge-base-settings in Groove for a specific knowledge_base_id. Returns key appearance and configuration fields including primary_color, primary_font_type, heading, and published status.
- **update_a_groove_knowledge_base_setting_by_id** — Update knowledge base settings in Groove for a specific knowledge base using id. Returns updated fields such as primary_color, secondary_color, primary_font_type, background_scaling, branding_disabled, ratings_enabled, help_count_enabled, contact_support_enabled, ratings_type, heading, subheading, search_input, contact_support_mailbox_id, and published.
- **groove_knowledge_base_settings_publish** — Publish knowledge base settings in Groove using id. Returns settings including primary_color, font types, branding options, ratings configurations, and publishing status in the response.
- **groove_knowledge_base_settings_revert** — Revert knowledge-base-settings for a specific knowledge_base_id in Groove. Returns key theme and layout fields such as primary_color, font settings, and publication status.
- **groove_knowledge_base_settings_resetting** — Reset knowledge base settings to defaults in Groove. Requires knowledge_base_id. Returns fields such as primary_color, font types, and display settings reflecting default configuration.
- **list_all_groove_knowledge_base_translations** — Get a specific knowledge base translation in Groove using knowledge_base_id and locale. Returns localized strings including article titles, category names, error messages, and contact form labels.
- **update_a_groove_knowledge_base_translation_by_id** — Update knowledge base translations in Groove for a specific knowledge_base_id and locale. Returns user object containing updated translation fields such as article_suggestions.
- **delete_a_groove_knowledge_base_translation_by_id** — Delete a specific knowledge base translation in Groove. Requires knowledge_base_id, locale, and id. Removes the translation entry and related localized content fields from the specified knowledge base.
- **groove_knowledge_base_translations_resetting** — Reset a translation for a specific locale in Groove knowledge base. Requires knowledge_base_id and locale. Returns updated translation details including status reflecting the reset operation.
- **list_all_groove_attachments** — List attachments for a specific message in Groove. Requires message. Returns filename, size, and url for each attachment.
- **create_a_groove_webhook** — Create a new webhook in Groove. Requires event and url. Returns the webhook object including event (trigger type), url (callback endpoint), and state (current status).
- **delete_a_groove_webhook_by_id** — Delete a specific webhook in Groove using id. Returns no content on success (204 No Content).
- **list_all_groove_widgets** — List all widgets in Groove. Returns each widget's id, name, uuid, created_at, updated_at, and published_settings fields for configuration and identification.
- **get_single_groove_widget_by_id** — Get details of a specific widget in Groove using id. Returns id, name, created_at, updated_at, uuid, and published_settings containing configuration and display information.
- **create_a_groove_widget** — Create a new widget in Groove. Requires name. Returns id, name, uuid, created_at, updated_at, and published_settings in the response.
- **update_a_groove_widget_by_id** — Update a widget in Groove using id. Requires id and name. Returns id, name, created_at, updated_at, uuid, and published_settings fields describing widget configuration and status.
- **delete_a_groove_widget_by_id** — Delete a specific widget in Groove. Requires id. The response confirms the deletion status of the widget.
- **list_all_groove_widget_settings** — Get widget settings in Groove using id. Returns configuration details such as branding_disabled, enabled, icon_display, widget_style, and published fields representing the widget's display and behavior.
- **update_a_groove_widget_setting_by_id** — Update widget-settings in Groove for a specific widget using id. Returns fields like branding_disabled, contact.name_field_enabled, icon_display, widget_style, and z_index to confirm updated configuration values.
- **groove_widget_settings_publish** — Publish widget settings in Groove for a specific widget using id. Returns fields showing widget configuration such as branding_disabled, contact.name_field_enabled, icon_style, widget_style, and published status.
- **groove_widget_settings_revert** — Revert widget-settings in Groove to their last published state using id. Returns settings fields such as branding_disabled, icon_display, widget_style, and published that define the widget's configuration.
- **groove_widget_settings_reset** — Reset widget-settings in Groove to their default values using id. Returns fields like branding_disabled, icon_display, widget_style, and published indicating the widget’s configuration state.
- **list_all_groove_categories_search** — Search categories in Groove by keyword within a knowledge_base_id. Requires keyword. Returns categories with id, title, description, featured, articles_count, and position fields.
- **list_all_groove_articles_search** — Search articles in Groove using keyword in a specific knowledge_base_id. Returns fields like id, title, description, author_name, tags, and category_id.
- **create_a_groove_articles_rating** — Create a rating for an article in Groove. Requires slug. Returns helpful_ratings_count and total_ratings_count showing the article’s feedback metrics.
- **list_all_groove_ticket_state** — Get the current state of a specific ticket in Groove using ticket_number. Returns the state field indicating whether the ticket is unread, read, or otherwise.
- **update_a_groove_ticket_state_by_id** — Update ticket-state for a specific ticket in Groove. Requires id as ticket_number and state as the new value (unread, opened, pending, closed, or spam). Returns updated ticket information including its new state and related metadata.
- **list_all_groove_ticket_assignee** — Get the assignee of a specific ticket in Groove using ticket_number. Returns agent details including email, first_name, last_name, and href.
- **update_a_groove_ticket_assignee_by_id** — Update ticket-assignee in Groove by assigning a ticket identified by ticket_number to a specified agent using their email. Returns updated assignee details and related ticket information.
- **create_a_groove_ticket_label** — Add labels to a specific ticket in Groove. Requires ticket_number and a list of tags. Returns the updated tags and tag_ids for the ticket in the response.
- **update_a_groove_ticket_label_by_id** — Replace all ticket-labels for a specific ticket in Groove. Requires ticket_number. Returns the updated list of labels applied to the ticket.
- **create_a_groove_mailbox_change** — Change the mailbox of a specific ticket in Groove. Requires ticket_id and mailbox_id. Returns 204 No Content confirming the mailbox reassignment.
- **create_a_groove_knowledge_base_category** — Create a new knowledge-base-category in Groove for the specified knowledge_base_id. Returns id, title, description, slug, state, created_at, and other metadata fields in the response.
- **get_single_groove_knowledge_base_category_by_id** — Get a specific knowledge base category in Groove using knowledge_base_id and id. Returns fields like title, description, state, and position to describe the category’s status and structure.
- **update_a_groove_knowledge_base_category_by_id** — Update a knowledge-base-categories in Groove using knowledge_base_id and id. Returns category details including id, title, description, slug, articles_count, state, created_at, and updated_at.
- **delete_a_groove_knowledge_base_category_by_id** — Delete a specific knowledge-base-categories resource in Groove using knowledge_base_id and id. Returns confirmation of successful deletion.
- **groove_knowledge_base_categories_revert** — Revert a specific knowledge-base-category in Groove. Requires knowledge_base_id and id. Returns fields like title, slug, state, and timestamps indicating the reverted category's state.
- **groove_knowledge_base_categories_publish** — Publish a specific knowledge-base-categories in Groove. Requires knowledge_base_id and id. Returns fields like id, title, state, published_at, and articles_count to confirm publication status.
- **groove_knowledge_base_categories_unpublish** — Unpublish a specific knowledge-base-category in Groove. Requires knowledge_base_id and id. Returns fields such as id, title, state, published_at, and articles_count indicating the category’s unpublishing status and details.
- **list_all_groove_knowledge_base_categories_search** — Search categories in Groove by keyword for a specific knowledge_base_id. Requires keyword and knowledge_base_id. Returns category fields such as id, title, state, and articles_count in the response.
- **create_a_groove_knowledge_base_article** — Create a new knowledge-base-article in Groove for a given knowledge_base_id. Returns fields like id, title, description, slug, state, featured, and timestamps in the response.
- **get_single_groove_knowledge_base_article_by_id** — Get details about a specific knowledge-base-article in Groove using knowledge_base_id and id. Returns fields such as title, state, author_id, created_at, and published_at for the article.
- **update_a_groove_knowledge_base_article_by_id** — Update a specific knowledge-base-article in Groove using knowledge_base_id and id. Returns the article object with fields such as id, title, category_id, state, published_at, updated_at, and author_id.
- **delete_a_groove_knowledge_base_article_by_id** — Delete a specific knowledge-base-article in Groove using knowledge_base_id and id. Permanently removes the article and returns no content in the response.
- **groove_knowledge_base_articles_publish** — Publish a specific knowledge-base-article in Groove using knowledge_base_id and id. Returns article fields including id, title, state, published_at, and updated_at to confirm publication status.
- **groove_knowledge_base_articles_unpublish** — Unpublish a specific knowledge-base-article in Groove. Requires knowledge_base_id and id. Returns fields like id, title, state, and published_at indicating the article’s unpublish status.
- **groove_knowledge_base_articles_revert** — Revert a specific knowledge-base-article in Groove using knowledge_base_id and id. Returns article details including id, title, state, created_at, updated_at, and related metadata fields.
- **list_all_groove_knowledge_base_articles_search** — Search knowledge base articles in Groove by keyword. Requires knowledge_base_id and keyword. Returns article fields including id, title, state, featured, and updated_at for each matching article.

## How it works

1. **Link your customer's Groove account.** Use Truto's frontend SDK; we handle every OAuth and API key flow so you don't need to create the OAuth app.
2. **Authentication is automatic.** Truto refreshes tokens, stores credentials securely, and injects them into every API request.
3. **Call Truto's API to reach Groove.** The Proxy API is a 1-to-1 mapping of the Groove API.
4. **Get a unified response format.** Every response uses a single shape, with cursor-based pagination and data in the `result` field.

## Use cases

- **Power an AI support co-pilot with Groove knowledge base and ticket data** — AI assistant platforms can ingest a customer's entire Groove knowledge base using article and category search endpoints, then listen for new tickets via webhooks to generate suggested replies posted as internal messages — giving agents instant, context-aware draft responses.
- **Sync ticket activity into a CRM for full account health visibility** — CRM and revenue intelligence platforms can pull Groove tickets, messages, and customer profiles to give sales and CS teams a complete picture of open support issues, ticket volume, and sentiment before engaging an account.
- **Automate support workflows from e-commerce and logistics platforms** — Returns, subscription, and order management SaaS products can automatically create tickets, inject status update messages into existing threads, and update ticket state or assignee in Groove — eliminating manual handoffs between ops tools and the support inbox.
- **Build churn-risk alerting by tagging high-friction accounts in Groove** — Customer health and churn prediction platforms can monitor ticket counts and message volume, then programmatically apply labels to at-risk accounts so support agents can prioritize retention-critical conversations without leaving Groove.
- **Manage knowledge bases programmatically from a headless CMS or docs platform** — Documentation and content platforms can create, update, publish, and unpublish Groove KB articles and categories via API, enabling teams to maintain a single source of truth that automatically syncs to their customer-facing help center.

## What you can build

- **Two-way ticket lifecycle sync** — List, create, and update Groove tickets — including state changes, assignee reassignment, label tagging, and mailbox transfers — so your product and Groove stay perfectly in sync.
- **Contextual customer sidebar enrichment** — Push custom data like subscription tier, LTV, or churn risk score into Groove customer profiles using the update customer endpoint, giving agents real-time context without switching tools.
- **Real-time webhook-driven event ingestion** — Register webhooks in Groove to receive instant notifications on ticket creation and updates, eliminating expensive polling and enabling event-driven automations in your product.
- **Programmatic knowledge base management** — Create, edit, publish, unpublish, and revert KB articles and categories through Groove's full article lifecycle endpoints, powering headless help centers or AI training pipelines.
- **Automated ticket triage and classification** — Use ticket and message listing endpoints to feed conversations into your classification engine, then write results back as labels, state updates, or assignee changes — fully automating first-touch triage.
- **Agent workload and ticket volume dashboards** — Pull ticket counts, agent lists, group memberships, and folder breakdowns to build reporting views that surface support team capacity and queue health inside your own product.

## FAQs

### What authentication method does the Groove integration use?

Groove uses API token-based authentication. Truto handles token storage and injection, so your end users simply connect their Groove account once through Truto's auth flow and you never manage raw credentials.

### Can I create and manage webhooks programmatically?

Yes. Truto exposes create_a_groove_webhook and delete_a_groove_webhook_by_id, so you can register and clean up event subscriptions entirely through the API without requiring manual setup in Groove's UI.

### What ticket operations are supported beyond basic CRUD?

Beyond listing, fetching, and creating tickets, you can update ticket state, change the assignee, add labels, and transfer tickets between mailboxes — all through dedicated endpoints for each operation.

### Does the integration support Groove's knowledge base article lifecycle?

Yes. You can create, update, delete, publish, unpublish, and revert KB articles and categories. Search endpoints for both articles and categories are also available, along with full translation and theme management.

### Is there a Unified API available for Groove through Truto?

Groove does not yet have a Unified API mapping on Truto. All operations use Groove-native proxy endpoints, which give you full access to every supported tool listed above. Unified API coverage can be requested.

### How does Truto handle pagination and rate limits for Groove?

Truto automatically manages cursor-based pagination on list endpoints so you receive complete result sets without writing pagination logic. Rate limit handling, including retries and backoff, is managed by Truto's proxy layer.
