Fredhopper Product Discovery icon

Fredhopper Product Discovery

Interact with Fredhopper Product Discovery API

Overview

This node integrates with the Fredhopper Product Discovery API, enabling users to manage product catalogs, items, category trees, locales, and authentication tokens. Specifically for the Catalog resource and the Get Active Catalog Version operation, the node retrieves the currently active catalog version for a specified tenant and environment.

This functionality is useful in scenarios where you need to programmatically check which catalog version is live in a given environment, such as during automated deployment pipelines, synchronization tasks, or monitoring workflows.

Example use case:

  • Automatically fetch the active catalog version before pushing updates to ensure you are working on the correct version.
  • Trigger alerts or downstream processes if the active catalog version changes.

Properties

Name Meaning
Tenant The tenant identifier (e.g., "solutions") specifying the customer or client context.
Environment The environment name (e.g., "cidp-test") indicating the target system environment.

Output

The output of the Get Active Catalog Version operation is expected to be a JSON object representing the active catalog version details retrieved from the API.

However, based on the source code, there appears to be an issue: the HTTP GET request to fetch the active catalog is made, but its response is not assigned to the output variable. Instead, the node returns { deleted: true }, which seems incorrect for this operation.

Expected output structure (based on typical API behavior):

{
  "version": "string",
  "status": "active",
  "created": "timestamp",
  "updated": "timestamp",
  "description": "string",
  // other catalog metadata fields
}

If the node worked correctly, it would return the full JSON response from the API describing the active catalog version.

Dependencies

  • Requires an API key credential for authenticating with the Fredhopper Product Discovery API.
  • The node uses Basic Authentication to obtain an OAuth2 bearer token, then uses that token for subsequent API requests.
  • The following parameters must be configured:
    • Tenant (string)
    • Environment (string)
  • The node makes HTTP requests to URLs under https://items.attraqt.io/catalogs.

Troubleshooting

  • Issue: The node returns { deleted: true } instead of the active catalog data.
    Cause: The response from the API call fetching the active catalog is not captured or returned properly in the code.
    Resolution: This appears to be a bug in the node implementation. A fix would involve assigning the API response to the output variable before returning.

  • Authentication errors:
    If the node fails to obtain an access token, it will throw an error like "Failed to obtain access token" or "Authentication failed".
    Resolution: Verify that the API credentials (username, password, auth URL) are correct and have sufficient permissions.

  • Unsupported operation error:
    If an unsupported operation is selected, the node throws an error stating the operation is not supported.
    Resolution: Ensure the operation name matches one of the supported options.

  • HTTP request failures:
    Network issues, invalid parameters, or API downtime can cause request failures.
    Resolution: Check network connectivity, parameter correctness, and API status.

Links and References

Discussion