Skip to main content
guru icon

Guru Connector

SourceAPI DocsAPI ChangelogConnector Changelog

Description​

Guru is a knowledge management platform that helps teams capture, organize, and share information effectively. This component allows you to interact with the Guru REST API.

API Documentation​

This component was built using the Guru API Documentation

Connections​

User Token​

key: guruUserToken

Configuring a User Token​

  1. Log into Guru
  2. Navigate to Manage > Apps and Integrations > API Access
  3. Select Generate User Token and copy the user token
  4. From the integration connection fill in the required fields:
    • Username: The Guru username or email address
    • User Token: The token obtained from your Guru account settings
InputNotesExample
Username

Your Guru username or email address.

User Token

Your user token for read/write access. Obtain this from your Guru account settings.

Triggers​

New and Updated Cards​

Checks for new and updated Cards in Guru on a configured schedule. | key: pollChangesTrigger

InputNotesExample
Connection
Show New Records

When true, cards created since the last poll are included in the trigger output.

true
Show Updated Records

When true, cards updated since the last poll are included in the trigger output.

true

This trigger polls Guru on a configured schedule and emits cards that were created or updated since the previous run. It is a convenient alternative to webhooks when a scheduled pull is preferred over an event push.

It relies on Guru Query Language to filter cards server-side by their lastModified timestamp.

How It Works​

On each scheduled run, the trigger searches cards using the query lastModified > <last poll timestamp>, then splits the results into two groups:

  • Created: cards whose dateCreated is after the previous poll.
  • Updated: cards the filter returned that were not newly created.

The trigger stores the current run time as the cursor for the next run.

  • First run: the very first execution records the cursor and emits nothing, so an instance does not receive a backlog of historical cards on deploy.
  • Subsequent runs: only cards created or updated since the last run are returned.

Returned Data​

The trigger returns the matching cards grouped under created and updated. Fields shown are representative. The full response object includes additional properties.

Example Payload
{
"data": {
"created": [],
"updated": [
{
"id": "13131313-1313-1313-1313-131313131313",
"preferredPhrase": "Updated Title",
"dateCreated": "2025-08-22T19:33:23.876+0000",
"lastModified": "2025-08-22T19:33:25.487+0000"
}
]
}
}

Notes​

  • Card timestamps are compared with full precision, so polling is incremental and does not re-emit unchanged cards.
  • The "new vs updated" split is derived from each card's dateCreated relative to the last poll time.

Webhook Events​

Manages Guru webhook subscriptions for your instance. On instance deploy, this trigger creates a webhook subscription in Guru (or reuses an existing one with matching URL and events). On instance deletion, it removes the subscription. The trigger validates incoming webhook requests and handles all webhook lifecycle management automatically. | key: webhook

InputNotesExample
Connection
Delivery Mode

The delivery mode of the webhook subscription.

BATCH
Active

Whether the webhook subscription is active.

true
Event Types

Select which event types should trigger the webhook. <strong>Important:</strong> Max 10 event types can be selected.

card-createdcard-updated

This trigger receives Guru webhook events and automatically manages webhook subscriptions throughout the instance lifecycle. Unlike manual webhook setups, the entire lifecycle is handled automatically.

How It Works​

When this trigger is used in a flow:

  • On Instance Deploy: The trigger automatically creates a webhook subscription in Guru pointing to the instance's unique webhook URL. If a subscription with the same URL already exists, it reuses and updates the existing subscription.
  • On Instance Deletion: The trigger automatically removes the webhook subscription from Guru.

Configuration​

Configure the following inputs:

  • Event Types: Select which event types should trigger the webhook. A maximum of 10 event types can be selected per subscription. Defaults to card-created and card-updated.
  • Active: Whether the webhook subscription is active. Defaults to true.
  • Delivery Mode: The delivery mode for the webhook subscription. Single delivers events as individual JSON objects one at a time. Batch delivers one or more events in a JSON envelope. Defaults to Batch.

Event Types​

Available Events (55)
EventDescription
alert-readAn alert is read
api-token-createdAn API token is created
api-token-deletedAn API token is deleted
board-createdA board is created
board-updatedA board is updated
board-deletedA board is deleted
board-viewedA board is viewed
board-to-pdfA board is exported to PDF
card-createdA card is created
card-updatedA card is updated
card-deletedA card is deleted
card-restoredA card is restored
card-viewedA card is viewed
card-verifiedA card is verified
card-favoritedA card is favorited
card-unfavoritedA card is unfavorited
card-shared-to-teamA card is shared to a team
card-unsharedA card is unshared
card-copiedA card is copied
card-copied-trackingA card copy is tracked
card-to-pdfA card is exported to PDF
card-link-copiedA card link is copied
card-link-viewedA card link is viewed
card-sync-link-copiedA card sync link is copied
card-file-link-viewedA card file link is viewed
card-added-to-boardA card is added to a board
card-comment-createdA comment is created on a card
card-comment-updatedA comment on a card is updated
card-comment-deletedA comment on a card is deleted
card-comment-resolvedA comment on a card is resolved
card-comment-reopenedA comment on a card is reopened
collection-createdA collection is created
collection-deletedA collection is deleted
collection-exportedA collection is exported
draft-createdA draft is created
draft-deletedA draft is deleted
loginA user logs in
question-createdA question is created
question-answeredA question is answered
question-deletedA question is deleted
tag-category-createdA tag category is created
tag-category-updatedA tag category is updated
tag-category-deletedA tag category is deleted
tag-category-mergedA tag category is merged
tag-createdA tag is created
tag-updatedA tag is updated
tag-deletedA tag is deleted
tag-mergedA tag is merged
team-member-addedA team member is added
team-member-removedA team member is removed
usergroup-createdA user group is created
usergroup-deletedA user group is deleted
usergroup-member-addedA member is added to a user group
usergroup-member-deletedA member is removed from a user group

Refer to Guru's webhook documentation for the complete and up-to-date list of available events.

Returned Data​

Example Payload
{
"id": "64753163-9817-4500-9651-96177c32e3d1",
"eventType": "card-created",
"user": "user@example.com",
"eventDate": "2024-01-15T10:30:00.000+0000"
}

Notes​

  • Each webhook subscription supports a maximum of 10 event types. To monitor more than 10 event types, create multiple flows with separate webhook subscriptions.
  • Individual users can create up to 25 webhook subscriptions in Guru.
  • The target URL must use HTTPS.

Data Sources​

Select Card​

Select a card from your Guru workspace | key: selectCard | type: picklist

InputNotesExample
Connection
Query

Advanced query using Guru query language syntax.

title:guide AND author:john
Query Type

The type of query to search for.

cards
Search Terms

Search terms to use in the search.

user guide tutorial

Select Collection​

Select a collection from your Guru workspace | key: selectCollection | type: picklist

InputNotesExample
Connection
Search

The search term to use in the search.

user guide tutorial

Select Folder​

Select a folder from your Guru workspace | key: selectFolder | type: picklist

InputNotesExample
Connection
Query

Advanced query using Guru query language syntax.

title:guide AND author:john
Search

The search term to use in the search.

user guide tutorial

Select Member​

Select a member from your Guru team | key: selectMember | type: picklist

InputNotesExample
Connection
Search

The search term to use in the search.

user guide tutorial

Select User Group​

Select a user group from your Guru workspace. | key: selectUserGroup | type: picklist

InputNotesExample
Connection
Example Payload for Select User Group⤓
Loading…

Actions​

Add User Group Member​

Add a user group member | key: addUserGroupMember

InputNotesExample
Connection
Email

The user's email address. <strong>Important:</strong> Must be an existing Guru user.

john.doe@example.com
First Name

The user's first name.

John
Group ID

The ID of the group.

5f123b24-a3dc-4cc9-9f5a-d78fc1ffa43f
Last Name

The user's last name.

Doe
Example Payload for Add User Group Member⤓
Loading…

Create Card​

Create a new card in Guru | key: createCard

InputNotesExample
Additional Properties

Additional properties to include in the request.

{"verificationInterval":"90"}
Card Content

The content/body of the card.

Subject: Welcome! Hello [Name].
Card Title

The title of the card.

My Card Title
Collection ID

The unique identifier of the collection.

0ea16439-ba25-4dca-a1b4-15861a9b123f
Connection
Share Status

The sharing status of the card.

TEAM
Example Payload for Create Card⤓
Loading…

Create Folder​

Create a new folder in a collection | key: createFolder

InputNotesExample
Collection ID

The unique identifier of the collection.

0ea16439-ba25-4dca-a1b4-15861a9b123f
Connection
Folder Description

A description of the folder.

This folder contains...
Folder Title

The title of the folder.

My Folder
Parent Folder ID

The ID of the parent folder (optional for nested folders).

a350b7c1-e0d2-43b1-8e49-fc4d123b31a7
Example Payload for Create Folder⤓
Loading…

Create Webhook Subscription​

Create a new webhook subscription to receive real-time Guru events | key: createWebhookSubscription

InputNotesExample
Connection
Delivery Mode

The delivery mode of the webhook subscription.

BATCH
Webhook URL

The URL where webhook events will be sent.

https://your-webhook-endpoint.com/webhook/abc123
Active

Whether the webhook subscription is active.

true
Event Types

Select which event types should trigger the webhook. <strong>Important:</strong> Max 10 event types can be selected.

card-createdcard-updated
Example Payload for Create Webhook Subscription⤓
Loading…

Delete All Webhook Subscriptions​

Delete all webhook subscriptions for the current user (use with caution) | key: deleteAllWebhookSubscriptions

InputNotesExample
Connection
Example Payload for Delete All Webhook Subscriptions⤓
Loading…

Delete Card​

Delete a card from Guru | key: deleteCard

InputNotesExample
Card ID

The unique identifier of the card.

73791e85-09f5-4098-983c-e677a8bd123b
Connection
Example Payload for Delete Card⤓
Loading…

Delete Folder​

Delete a folder from Guru | key: deleteFolder

InputNotesExample
Connection
Folder ID

The unique identifier of the folder.

8b7bd513-9910-4116-989e-9a0ed9339380
Example Payload for Delete Folder⤓
Loading…

Delete User Group Member​

Remove a user from a user group | key: deleteUserGroupMember

InputNotesExample
Connection
Group ID

The ID of the group.

5f123b24-a3dc-4cc9-9f5a-d78fc1ffa43f
Member ID

The ID of the member.

john.doe@example.com
Example Payload for Delete User Group Member⤓
Loading…

Delete Webhook Subscription​

Delete a webhook subscription to stop receiving events | key: deleteWebhookSubscription

InputNotesExample
Connection
Webhook ID

The unique identifier of the webhook.

969123fb-6436-4a4e-8a78-20d79ff43804
Example Payload for Delete Webhook Subscription⤓
Loading…

Get Card​

Retrieve a specific card with extended information including teams and collaborators | key: getCard

InputNotesExample
Card ID

The unique identifier of the card.

73791e85-09f5-4098-983c-e677a8bd123b
Connection
Example Payload for Get Card⤓
Loading…

Get Card Folders​

Get the folders that contain a specific card | key: getCardFolders

InputNotesExample
Card ID

The unique identifier of the card.

73791e85-09f5-4098-983c-e677a8bd123b
Connection
Example Payload for Get Card Folders⤓
Loading…

Get Collection​

Retrieve details of a specific collection by ID | key: getCollection

InputNotesExample
Collection ID

The unique identifier of the collection.

0ea16439-ba25-4dca-a1b4-15861a9b123f
Connection
Example Payload for Get Collection⤓
Loading…

Get Folder​

Retrieve details of a specific folder by ID | key: getFolder

InputNotesExample
Connection
Folder ID

The unique identifier of the folder.

8b7bd513-9910-4116-989e-9a0ed9339380
Example Payload for Get Folder⤓
Loading…

Get Folder Items​

Retrieve all items (cards and subfolders) in a specific folder | key: getFolderItems

InputNotesExample
Connection
Fetch All

Turn on to fetch more than 50 folders.

false
Folder ID

The unique identifier of the folder.

8b7bd513-9910-4116-989e-9a0ed9339380
Example Payload for Get Folder Items⤓
Loading…

Get Team Analytics​

Retrieve analytics data for the team | key: getTeamAnalytics

InputNotesExample
Connection
Fetch All

Turn on to fetch more than 500 events.

false
From Date

The start date of the time range in YYYY-MM-DD format.

2024-01-01
Team ID

The ID of the team.

5f123b24-a3dc-4cc9-9f5a-d78fc1ffa43f
To Date

The end date of the time range in YYYY-MM-DD format.

2024-12-31
Example Payload for Get Team Analytics⤓
Loading…

Get Webhook Subscription​

Retrieve details of a specific webhook subscription | key: getWebhookSubscription

InputNotesExample
Connection
Webhook ID

The unique identifier of the webhook.

969123fb-6436-4a4e-8a78-20d79ff43804
Example Payload for Get Webhook Subscription⤓
Loading…

List Card Verifiers​

List the verifiers for a card | key: listCardVerifiers

InputNotesExample
Card ID

The unique identifier of the card.

73791e85-09f5-4098-983c-e677a8bd123b
Connection
Example Payload for List Card Verifiers⤓
Loading…

List Collection Group Access​

Get details of all groups with access to a collection | key: listCollectionGroupAccess

InputNotesExample
Collection ID

The unique identifier of the collection.

0ea16439-ba25-4dca-a1b4-15861a9b123f
Connection
Example Payload for List Collection Group Access⤓
Loading…

List Collections​

Retrieve a list of all collections accessible to the user | key: listCollections

InputNotesExample
Connection
Search

The search term to use in the search.

user guide tutorial
Example Payload for List Collections⤓
Loading…

List Folders​

Retrieve a list of all folders | key: listFolders

InputNotesExample
Connection
Fetch All

Turn on to fetch more than 110 folders.

false
Query

Advanced query using Guru query language syntax.

title:guide AND author:john
Search

The search term to use in the search.

user guide tutorial
Example Payload for List Folders⤓
Loading…

List Team Members​

Retrieve a list of all team members | key: listTeamMembers

InputNotesExample
Connection
Fetch All

Turn on to fetch more than 50 members.

false
Search

The search term to use in the search.

user guide tutorial
Example Payload for List Team Members⤓
Loading…

List User Groups​

Returns all groups on the team | key: listUserGroups

InputNotesExample
Connection
Example Payload for List User Groups⤓
Loading…

List Webhook Subscriptions​

Retrieve all webhook subscriptions for the current user | key: listWebhookSubscriptions

InputNotesExample
Connection
Example Payload for List Webhook Subscriptions⤓
Loading…

Raw Request​

Send raw HTTP request to Guru API | key: rawRequest

InputNotesExample
Connection
Data

The HTTP body payload to send to the URL.

{"exampleKey": "Example Data"}
File Data

File Data to be sent as a multipart form upload.

[{key: "example.txt", value: "My File Contents"}]
File Data File Names

File names to apply to the file data inputs. Keys must match the file data keys above.

Form Data

The Form Data to be sent as a multipart form upload.

[{"key": "Example Key", "value": new Buffer("Hello World")}]
Header

A list of headers to send with the request.

User-Agent: curl/7.64.1
Max Retry Count

The maximum number of retries to attempt. Specify 0 for no retries.

0
Method

The HTTP method to use.

Query Parameter

A list of query parameters to send with the request. This is the portion at the end of the URL similar to ?key1=value1&key2=value2.

Response Type

The type of data you expect in the response. You can request json, text, or binary data.

json
Retry On All Errors

If true, retries on all erroneous responses regardless of type. This is helpful when retrying after HTTP 429 or other 3xx or 4xx errors. Otherwise, only retries on HTTP 5xx and network errors.

false
Retry Delay (ms)

The delay in milliseconds between retries. This is used when 'Use Exponential Backoff' is disabled.

0
Timeout

The maximum time that a client will await a response to its request

2000
URL

Input the path only (/cards), The base URL is already included (https://api.getguru.com/api/v1). For example, to connect to https://api.getguru.com/api/v1/cards, only /cards is entered in this field.

/cards
Use Exponential Backoff

Specifies whether to use a pre-defined exponential backoff strategy for retries. When enabled, 'Retry Delay (ms)' is ignored.

false

Search Cards​

Search for cards and content in Guru | key: searchCards

InputNotesExample
Connection
Fetch All

Turn on to fetch more than 50 cards.

false
Max Results

The maximum number of results to return.

50
Query

Advanced query using Guru query language syntax.

title:guide AND author:john
Query Type

The type of query to search for.

cards
Search Terms

Search terms to use in the search.

user guide tutorial
Example Payload for Search Cards⤓
Loading…

Search Folders​

Search for folders by title or description | key: searchFolders

InputNotesExample
Collection ID

The unique identifier of the collection.

0ea16439-ba25-4dca-a1b4-15861a9b123f
Connection
Search Terms

Search terms to use in the search.

user guide tutorial
Example Payload for Search Folders⤓
Loading…

Test Webhook​

Send a test event to a webhook subscription to verify it's working | key: testWebhook

InputNotesExample
Connection
Test Data

The data to send to the webhook.

{
  "id": "64753163-9817-4500-9651-96177c32e3d1",
  "eventType": "card-created",
  "user": "bob@getguru.com",
  "eventDate": "2021-04-13T13:53:00.000+0000"
}
Webhook ID

The unique identifier of the webhook.

969123fb-6436-4a4e-8a78-20d79ff43804
Example Payload for Test Webhook⤓
Loading…

Unverify Card​

Remove verification from a card | key: unverifyCard

InputNotesExample
Card ID

The unique identifier of the card.

73791e85-09f5-4098-983c-e677a8bd123b
Connection
Verification Reason

Optional reason for the verification status.

Information is current and accurate
Example Payload for Unverify Card⤓
Loading…

Update Card​

Update an existing card in Guru | key: updateCard

InputNotesExample
Additional Properties

Additional properties to include in the request.

{
  "verificationInterval": 90,
  "tags": [
    "important",
    "updated"
  ],
  "customField": "value"
}
Card Content

The content/body of the card.

Subject: Welcome! Hello [Name].
Card ID

The unique identifier of the card.

73791e85-09f5-4098-983c-e677a8bd123b
Card Title

The title of the card.

My Card Title
Connection
Share Status

The sharing status of the card.

Example Payload for Update Card⤓
Loading…

Update Folder​

Update an existing folder | key: updateFolder

InputNotesExample
Connection
Folder Description

A description of the folder.

This folder contains...
Folder ID

The unique identifier of the folder.

8b7bd513-9910-4116-989e-9a0ed9339380
Folder Title

The title of the folder.

My Folder
Parent Folder ID

The ID of the parent folder (optional for nested folders).

a350b7c1-e0d2-43b1-8e49-fc4d123b31a7
Example Payload for Update Folder⤓
Loading…

Update Webhook Subscription​

Update an existing webhook subscription settings | key: updateWebhookSubscription

InputNotesExample
Connection
Delivery Mode

The delivery mode of the webhook subscription.

BATCH
Webhook URL

The URL where webhook events will be sent.

https://your-webhook-endpoint.com/webhook/abc123
Active

Whether the webhook subscription is active.

true
Event Types

Select which event types should trigger the webhook. <strong>Important:</strong> Max 10 event types can be selected.

card-createdcard-updated
Webhook ID

The unique identifier of the webhook.

969123fb-6436-4a4e-8a78-20d79ff43804
Example Payload for Update Webhook Subscription⤓
Loading…

Verify Card​

Mark a card as verified | key: verifyCard

InputNotesExample
Card ID

The unique identifier of the card.

73791e85-09f5-4098-983c-e677a8bd123b
Connection
Verification Reason

Optional reason for the verification status.

Information is current and accurate
Verification Status

The verification status to set for the card.

VERIFIED
Example Payload for Verify Card⤓
Loading…

Who Am I​

Get information about the current authenticated user | key: whoAmI

InputNotesExample
Connection
Example Payload for Who Am I⤓
Loading…

Changelog​

2026-06-05​

Added the New and Updated Cards polling trigger that returns cards created or updated since the last run

2026-04-30​

Updated spectral version

2026-04-07​

Various modernizations and documentation updates

2026-02-26​

Added inline data source for user groups to enable dynamic dropdown selection

2025-10-17​

Enhanced webhook lifecycle management with improved trigger subscription handling and automated cleanup

2025-08-28​

Initial release of component featuring management of various record types and webhook subscriptions