ChatWoot icon

ChatWoot

Interact with ChatWoot API

Actions113

Overview

This node interacts with the Conversations resource of a chat or messaging platform, specifically providing an operation to filter conversations based on specified criteria. It allows users to query conversations by applying complex filters on conversation attributes such as status, language, or other metadata.

Common scenarios where this node is beneficial include:

  • Retrieving all conversations that are pending response.
  • Filtering conversations by user attributes or conversation metadata for reporting or automation.
  • Paginating through large sets of filtered conversations.

For example, you could use this node to fetch all conversations where the browser language is not English and the status is pending, enabling targeted follow-up actions or analytics.

Properties

Name Meaning
Account Id The numeric ID of the account whose conversations you want to filter. This is required to scope the query.
Page The page number of results to retrieve, supporting pagination of filtered conversations.
Payload A JSON array defining the filter criteria. Each element specifies:
- attribute_key: the attribute to filter on (e.g., "status")
- filter_operator: the comparison operator (e.g., "eq" for equals, "not_eq" for not equals)
- values: an array of values to compare against
- query_operator: logical operator to combine multiple filters ("AND", "OR", or null)

Example payload:

[
  {
    "attribute_key": "browser_language",
    "filter_operator": "not_eq",
    "values": [
      "en"
    ],
    "query_operator": "AND"
  },
  {
    "attribute_key": "status",
    "filter_operator": "eq",
    "values": [
      "pending"
    ],
    "query_operator": null
  }
]

Output

The node outputs JSON data representing the filtered list of conversations retrieved from the API. The structure typically includes conversation details matching the filter criteria, such as conversation IDs, statuses, timestamps, and any other relevant metadata provided by the service.

If the API supports binary data in responses (e.g., attachments), the node would handle it accordingly, but based on the provided code and properties, the output focuses on JSON conversation data.

Dependencies

  • Requires an API key credential for authenticating with the chat/messaging platform's API.
  • Needs the base URL of the API endpoint configured in credentials.
  • Depends on the external API to support filtering conversations via the specified payload format.
  • Uses an OpenAPI-based client internally to communicate with the API.

Troubleshooting

  • Invalid Account Id: If the account ID is incorrect or missing, the API will likely return an error or empty results. Ensure the account ID is valid and accessible.
  • Malformed Payload: The filter payload must be valid JSON and conform to the expected schema. Invalid JSON or unsupported filter operators may cause request failures.
  • Pagination Issues: Requesting pages beyond available data will result in empty responses. Adjust the Page property accordingly.
  • Authentication Errors: Missing or invalid API credentials will prevent successful API calls. Verify that the API key and base URL are correctly set in the node credentials.
  • API Rate Limits: Excessive requests might trigger rate limiting; consider adding delays or handling retries.

Links and References

Discussion