n8n-nodes-hudu 1.3.3 → 1.3.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +53 -105
- package/dist/nodes/Hudu/Hudu.node.js +67 -14
- package/dist/nodes/Hudu/Hudu.node.js.map +1 -1
- package/dist/nodes/Hudu/Hudu.node.ts +473 -398
- package/dist/nodes/Hudu/descriptions/HuduAssetCustomFieldDescription.js +75 -0
- package/dist/nodes/Hudu/descriptions/HuduAssetCustomFieldDescription.js.map +1 -0
- package/dist/nodes/Hudu/descriptions/HuduAssetCustomFieldDescription.ts +73 -0
- package/dist/nodes/Hudu/descriptions/HuduAssetLinkFieldDescription.js +77 -0
- package/dist/nodes/Hudu/descriptions/HuduAssetLinkFieldDescription.js.map +1 -0
- package/dist/nodes/Hudu/descriptions/HuduAssetLinkFieldDescription.ts +75 -0
- package/dist/nodes/Hudu/descriptions/HuduAssetStandardFieldDescription.js +74 -0
- package/dist/nodes/Hudu/descriptions/HuduAssetStandardFieldDescription.js.map +1 -0
- package/dist/nodes/Hudu/descriptions/HuduAssetStandardFieldDescription.ts +72 -0
- package/dist/nodes/Hudu/descriptions/asset_layout_fields.description.js +22 -1
- package/dist/nodes/Hudu/descriptions/asset_layout_fields.description.js.map +1 -1
- package/dist/nodes/Hudu/descriptions/asset_layout_fields.description.ts +25 -2
- package/dist/nodes/Hudu/descriptions/assets.description.js +86 -374
- package/dist/nodes/Hudu/descriptions/assets.description.js.map +1 -1
- package/dist/nodes/Hudu/descriptions/assets.description.ts +89 -380
- package/dist/nodes/Hudu/descriptions/index.js +7 -1
- package/dist/nodes/Hudu/descriptions/index.js.map +1 -1
- package/dist/nodes/Hudu/descriptions/index.ts +7 -1
- package/dist/nodes/Hudu/descriptions/ip_addresses.description.js +14 -26
- package/dist/nodes/Hudu/descriptions/ip_addresses.description.js.map +1 -1
- package/dist/nodes/Hudu/descriptions/ip_addresses.description.ts +14 -26
- package/dist/nodes/Hudu/descriptions/list_options.description.js +91 -0
- package/dist/nodes/Hudu/descriptions/list_options.description.js.map +1 -0
- package/dist/nodes/Hudu/descriptions/list_options.description.ts +95 -0
- package/dist/nodes/Hudu/descriptions/lists.description.js +12 -108
- package/dist/nodes/Hudu/descriptions/lists.description.js.map +1 -1
- package/dist/nodes/Hudu/descriptions/lists.description.ts +13 -110
- package/dist/nodes/Hudu/descriptions/networks.description.js +163 -0
- package/dist/nodes/Hudu/descriptions/networks.description.js.map +1 -1
- package/dist/nodes/Hudu/descriptions/networks.description.ts +163 -0
- package/dist/nodes/Hudu/descriptions/public_photos.description.js +51 -3
- package/dist/nodes/Hudu/descriptions/public_photos.description.js.map +1 -1
- package/dist/nodes/Hudu/descriptions/public_photos.description.ts +51 -3
- package/dist/nodes/Hudu/descriptions/resources.js +24 -0
- package/dist/nodes/Hudu/descriptions/resources.js.map +1 -1
- package/dist/nodes/Hudu/descriptions/resources.ts +24 -0
- package/dist/nodes/Hudu/descriptions/vlan_zones.description.js +279 -0
- package/dist/nodes/Hudu/descriptions/vlan_zones.description.js.map +1 -0
- package/dist/nodes/Hudu/descriptions/vlan_zones.description.ts +282 -0
- package/dist/nodes/Hudu/descriptions/vlans.description.js +325 -0
- package/dist/nodes/Hudu/descriptions/vlans.description.js.map +1 -0
- package/dist/nodes/Hudu/descriptions/vlans.description.ts +328 -0
- package/dist/nodes/Hudu/descriptions/websites.description.js +277 -10
- package/dist/nodes/Hudu/descriptions/websites.description.js.map +1 -1
- package/dist/nodes/Hudu/descriptions/websites.description.ts +277 -10
- package/dist/nodes/Hudu/optionLoaders/asset_layouts/getAssetLayoutFields.js +36 -23
- package/dist/nodes/Hudu/optionLoaders/asset_layouts/getAssetLayoutFields.js.map +1 -1
- package/dist/nodes/Hudu/optionLoaders/asset_layouts/getAssetLayoutFields.ts +254 -234
- package/dist/nodes/Hudu/optionLoaders/asset_layouts/getAssetLinkFields.js +51 -0
- package/dist/nodes/Hudu/optionLoaders/asset_layouts/getAssetLinkFields.js.map +1 -0
- package/dist/nodes/Hudu/optionLoaders/asset_layouts/getAssetLinkFields.ts +70 -0
- package/dist/nodes/Hudu/optionLoaders/asset_layouts/getCustomFieldsLayoutFields.js +11 -11
- package/dist/nodes/Hudu/optionLoaders/asset_layouts/getCustomFieldsLayoutFields.js.map +1 -1
- package/dist/nodes/Hudu/optionLoaders/asset_layouts/getCustomFieldsLayoutFields.ts +11 -11
- package/dist/nodes/Hudu/optionLoaders/asset_layouts/index.js +1 -1
- package/dist/nodes/Hudu/optionLoaders/asset_layouts/index.js.map +1 -1
- package/dist/nodes/Hudu/optionLoaders/asset_layouts/index.ts +1 -1
- package/dist/nodes/Hudu/optionLoaders/assets/getAssetCustomFields.js +71 -0
- package/dist/nodes/Hudu/optionLoaders/assets/getAssetCustomFields.js.map +1 -0
- package/dist/nodes/Hudu/optionLoaders/assets/getAssetCustomFields.ts +80 -0
- package/dist/nodes/Hudu/optionLoaders/assets/getAssetsForCompany.js +45 -0
- package/dist/nodes/Hudu/optionLoaders/assets/getAssetsForCompany.js.map +1 -0
- package/dist/nodes/Hudu/optionLoaders/assets/getAssetsForCompany.ts +59 -0
- package/dist/nodes/Hudu/optionLoaders/assets/getLinkableAssets.js +117 -0
- package/dist/nodes/Hudu/optionLoaders/assets/getLinkableAssets.js.map +1 -0
- package/dist/nodes/Hudu/optionLoaders/assets/getLinkableAssets.ts +147 -0
- package/dist/nodes/Hudu/optionLoaders/assets/index.js +2 -0
- package/dist/nodes/Hudu/optionLoaders/assets/index.js.map +1 -1
- package/dist/nodes/Hudu/optionLoaders/assets/index.ts +3 -1
- package/dist/nodes/Hudu/optionLoaders/index.js +1 -0
- package/dist/nodes/Hudu/optionLoaders/index.js.map +1 -1
- package/dist/nodes/Hudu/optionLoaders/index.ts +4 -3
- package/dist/nodes/Hudu/optionLoaders/lists/getLists.js +31 -0
- package/dist/nodes/Hudu/optionLoaders/lists/getLists.js.map +1 -0
- package/dist/nodes/Hudu/optionLoaders/lists/getLists.ts +56 -0
- package/dist/nodes/Hudu/optionLoaders/lists/index.js +18 -0
- package/dist/nodes/Hudu/optionLoaders/lists/index.js.map +1 -0
- package/dist/nodes/Hudu/optionLoaders/lists/index.ts +1 -0
- package/dist/nodes/Hudu/resources/articles/articles.handler.js +2 -1
- package/dist/nodes/Hudu/resources/articles/articles.handler.js.map +1 -1
- package/dist/nodes/Hudu/resources/articles/articles.handler.ts +2 -1
- package/dist/nodes/Hudu/resources/assetCustomField/assetCustomField.handler.js +222 -0
- package/dist/nodes/Hudu/resources/assetCustomField/assetCustomField.handler.js.map +1 -0
- package/dist/nodes/Hudu/resources/assetCustomField/assetCustomField.handler.ts +293 -0
- package/dist/nodes/Hudu/resources/assetCustomField/assetCustomField.types.js +3 -0
- package/dist/nodes/Hudu/resources/assetCustomField/assetCustomField.types.js.map +1 -0
- package/dist/nodes/Hudu/resources/assetCustomField/assetCustomField.types.ts +1 -0
- package/dist/nodes/Hudu/resources/assetLinkField/assetLinkField.handler.js +262 -0
- package/dist/nodes/Hudu/resources/assetLinkField/assetLinkField.handler.js.map +1 -0
- package/dist/nodes/Hudu/resources/assetLinkField/assetLinkField.handler.ts +363 -0
- package/dist/nodes/Hudu/resources/assetLinkField/assetLinkField.types.js +3 -0
- package/dist/nodes/Hudu/resources/assetLinkField/assetLinkField.types.js.map +1 -0
- package/dist/nodes/Hudu/resources/assetLinkField/assetLinkField.types.ts +1 -0
- package/dist/nodes/Hudu/resources/assetStandardField/assetStandardField.handler.js +93 -0
- package/dist/nodes/Hudu/resources/assetStandardField/assetStandardField.handler.js.map +1 -0
- package/dist/nodes/Hudu/resources/assetStandardField/assetStandardField.handler.ts +141 -0
- package/dist/nodes/Hudu/resources/assetStandardField/assetStandardField.types.js +3 -0
- package/dist/nodes/Hudu/resources/assetStandardField/assetStandardField.types.js.map +1 -0
- package/dist/nodes/Hudu/resources/assetStandardField/assetStandardField.types.ts +1 -0
- package/dist/nodes/Hudu/resources/asset_layouts/asset_layouts.handler.js +2 -1
- package/dist/nodes/Hudu/resources/asset_layouts/asset_layouts.handler.js.map +1 -1
- package/dist/nodes/Hudu/resources/asset_layouts/asset_layouts.handler.ts +2 -1
- package/dist/nodes/Hudu/resources/asset_passwords/asset_passwords.handler.js +2 -1
- package/dist/nodes/Hudu/resources/asset_passwords/asset_passwords.handler.js.map +1 -1
- package/dist/nodes/Hudu/resources/asset_passwords/asset_passwords.handler.ts +2 -1
- package/dist/nodes/Hudu/resources/assets/assets.handler.js +105 -193
- package/dist/nodes/Hudu/resources/assets/assets.handler.js.map +1 -1
- package/dist/nodes/Hudu/resources/assets/assets.handler.ts +234 -409
- package/dist/nodes/Hudu/resources/assets/assets.types.ts +2 -1
- package/dist/nodes/Hudu/resources/companies/companies.handler.js +2 -1
- package/dist/nodes/Hudu/resources/companies/companies.handler.js.map +1 -1
- package/dist/nodes/Hudu/resources/companies/companies.handler.ts +2 -1
- package/dist/nodes/Hudu/resources/folders/folders.handler.js +2 -1
- package/dist/nodes/Hudu/resources/folders/folders.handler.js.map +1 -1
- package/dist/nodes/Hudu/resources/folders/folders.handler.ts +2 -1
- package/dist/nodes/Hudu/resources/index.js +12 -0
- package/dist/nodes/Hudu/resources/index.js.map +1 -1
- package/dist/nodes/Hudu/resources/index.ts +18 -0
- package/dist/nodes/Hudu/resources/ip_addresses/ip_addresses.handler.js +13 -1
- package/dist/nodes/Hudu/resources/ip_addresses/ip_addresses.handler.js.map +1 -1
- package/dist/nodes/Hudu/resources/ip_addresses/ip_addresses.handler.ts +18 -1
- package/dist/nodes/Hudu/resources/ip_addresses/ip_addresses.types.ts +13 -11
- package/dist/nodes/Hudu/resources/list_options/list_options.handler.js +220 -0
- package/dist/nodes/Hudu/resources/list_options/list_options.handler.js.map +1 -0
- package/dist/nodes/Hudu/resources/list_options/list_options.handler.ts +291 -0
- package/dist/nodes/Hudu/resources/list_options/list_options.types.js +3 -0
- package/dist/nodes/Hudu/resources/list_options/list_options.types.js.map +1 -0
- package/dist/nodes/Hudu/resources/list_options/list_options.types.ts +8 -0
- package/dist/nodes/Hudu/resources/lists/lists.handler.js +9 -24
- package/dist/nodes/Hudu/resources/lists/lists.handler.js.map +1 -1
- package/dist/nodes/Hudu/resources/lists/lists.handler.ts +13 -27
- package/dist/nodes/Hudu/resources/networks/networks.handler.js +5 -1
- package/dist/nodes/Hudu/resources/networks/networks.handler.js.map +1 -1
- package/dist/nodes/Hudu/resources/networks/networks.handler.ts +7 -1
- package/dist/nodes/Hudu/resources/networks/networks.types.ts +11 -0
- package/dist/nodes/Hudu/resources/password_folders/password_folders.handler.js +2 -1
- package/dist/nodes/Hudu/resources/password_folders/password_folders.handler.js.map +1 -1
- package/dist/nodes/Hudu/resources/password_folders/password_folders.handler.ts +2 -1
- package/dist/nodes/Hudu/resources/procedure_tasks/procedure_tasks.handler.js +2 -1
- package/dist/nodes/Hudu/resources/procedure_tasks/procedure_tasks.handler.js.map +1 -1
- package/dist/nodes/Hudu/resources/procedure_tasks/procedure_tasks.handler.ts +2 -1
- package/dist/nodes/Hudu/resources/procedures/procedures.handler.js +2 -1
- package/dist/nodes/Hudu/resources/procedures/procedures.handler.js.map +1 -1
- package/dist/nodes/Hudu/resources/procedures/procedures.handler.ts +2 -1
- package/dist/nodes/Hudu/resources/public_photos/public_photos.handler.js +64 -5
- package/dist/nodes/Hudu/resources/public_photos/public_photos.handler.js.map +1 -1
- package/dist/nodes/Hudu/resources/public_photos/public_photos.handler.ts +153 -68
- package/dist/nodes/Hudu/resources/public_photos/public_photos.types.ts +1 -1
- package/dist/nodes/Hudu/resources/rack_storage_items/rack_storage_items.handler.js +2 -1
- package/dist/nodes/Hudu/resources/rack_storage_items/rack_storage_items.handler.js.map +1 -1
- package/dist/nodes/Hudu/resources/rack_storage_items/rack_storage_items.handler.ts +2 -1
- package/dist/nodes/Hudu/resources/rack_storages/rack_storages.handler.js +2 -1
- package/dist/nodes/Hudu/resources/rack_storages/rack_storages.handler.js.map +1 -1
- package/dist/nodes/Hudu/resources/rack_storages/rack_storages.handler.ts +2 -1
- package/dist/nodes/Hudu/resources/vlan_zones/vlan_zones.handler.js +154 -0
- package/dist/nodes/Hudu/resources/vlan_zones/vlan_zones.handler.js.map +1 -0
- package/dist/nodes/Hudu/resources/vlan_zones/vlan_zones.handler.ts +205 -0
- package/dist/nodes/Hudu/resources/vlan_zones/vlan_zones.types.js +3 -0
- package/dist/nodes/Hudu/resources/vlan_zones/vlan_zones.types.js.map +1 -0
- package/dist/nodes/Hudu/resources/vlan_zones/vlan_zones.types.ts +22 -0
- package/dist/nodes/Hudu/resources/vlans/vlans.handler.js +154 -0
- package/dist/nodes/Hudu/resources/vlans/vlans.handler.js.map +1 -0
- package/dist/nodes/Hudu/resources/vlans/vlans.handler.ts +207 -0
- package/dist/nodes/Hudu/resources/vlans/vlans.types.js +3 -0
- package/dist/nodes/Hudu/resources/vlans/vlans.types.js.map +1 -0
- package/dist/nodes/Hudu/resources/vlans/vlans.types.ts +25 -0
- package/dist/nodes/Hudu/resources/websites/websites.handler.js +40 -4
- package/dist/nodes/Hudu/resources/websites/websites.handler.js.map +1 -1
- package/dist/nodes/Hudu/resources/websites/websites.handler.ts +55 -4
- package/dist/nodes/Hudu/resources/websites/websites.types.ts +3 -0
- package/dist/nodes/Hudu/utils/constants.js +20 -1
- package/dist/nodes/Hudu/utils/constants.js.map +1 -1
- package/dist/nodes/Hudu/utils/constants.ts +23 -0
- package/dist/nodes/Hudu/utils/debugConfig.js +90 -19
- package/dist/nodes/Hudu/utils/debugConfig.js.map +1 -1
- package/dist/nodes/Hudu/utils/debugConfig.ts +125 -19
- package/dist/nodes/Hudu/utils/formatters.js +22 -1
- package/dist/nodes/Hudu/utils/formatters.js.map +1 -1
- package/dist/nodes/Hudu/utils/formatters.ts +34 -0
- package/dist/nodes/Hudu/utils/operations/getCompanyIdForAsset.js +23 -0
- package/dist/nodes/Hudu/utils/operations/getCompanyIdForAsset.js.map +1 -0
- package/dist/nodes/Hudu/utils/operations/getCompanyIdForAsset.ts +33 -0
- package/dist/nodes/Hudu/utils/requestUtils.js +29 -15
- package/dist/nodes/Hudu/utils/requestUtils.js.map +1 -1
- package/dist/nodes/Hudu/utils/requestUtils.ts +51 -21
- package/package.json +2 -2
- package/dist/nodes/Hudu/optionLoaders/asset_layouts/getAssetTagFields.js +0 -117
- package/dist/nodes/Hudu/optionLoaders/asset_layouts/getAssetTagFields.js.map +0 -1
- package/dist/nodes/Hudu/optionLoaders/asset_layouts/getAssetTagFields.ts +0 -172
- package/dist/nodes/Hudu/resources/assets/getManyAsAssetLinks.handler.js +0 -15
- package/dist/nodes/Hudu/resources/assets/getManyAsAssetLinks.handler.js.map +0 -1
- package/dist/nodes/Hudu/resources/assets/getManyAsAssetLinks.handler.ts +0 -18
package/README.md
CHANGED
|
@@ -1,54 +1,32 @@
|
|
|
1
1
|
# n8n-nodes-hudu
|
|
2
|
-
This community node enables seamless integration with Hudu documentation platform in your n8n workflows, allowing you to automate and manage your IT documentation tasks.
|
|
2
|
+
This community node enables seamless integration with the Hudu documentation platform in your n8n workflows, allowing you to automate and manage your IT documentation tasks.
|
|
3
3
|
|
|
4
4
|

|
|
5
5
|

|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
## Recent Changes
|
|
10
|
-
|
|
11
|
-
### [1.3.3] - 2025-04-24
|
|
12
|
-
- Asset link and asset tag fields are now serialised as JSON when creating or updating assets, ensuring correct data is sent to the Hudu API.
|
|
13
|
-
- The 'Return As Asset Links' feature is now available for both single asset (Get) and multiple assets (Get Many) operations, providing consistent output formatting for asset link custom fields.
|
|
14
|
-
- Asset layout custom fields now support advanced properties: `hint`, `min`, `max`, `linkable_id`, `expiration`, `options`, `multiple_options`, `list_id`, and more. An "Other Data" input is available for all field types, allowing you to specify additional properties as required by the Hudu API.
|
|
15
|
-
|
|
16
|
-
### [1.3.2] - 2025-04-24
|
|
17
|
-
- Full support for the new Lists resource, enabling you to create, update, retrieve, and manage lists directly from your n8n workflows.
|
|
18
|
-
- Resolved an issue with the Procedures kickoff operation
|
|
7
|
+
> **API Compatibility:** This node is aligned with Hudu API version 2.37.0. Some features require specific API versions. Compatibility with future Hudu versions is not guaranteed without further updates.
|
|
19
8
|
|
|
20
|
-
|
|
21
|
-
- Aligned package general content such as README and documentation
|
|
22
|
-
|
|
23
|
-
### [1.3.0] - 2025-03-20
|
|
24
|
-
- Fixed missing company_id field in asset delete, archive, and unarchive operations
|
|
25
|
-
|
|
26
|
-
### [1.2.9] - 2025-01-25
|
|
27
|
-
- Improved Asset operations with enhanced UI, custom asset tags support, and optimised asset creation/update
|
|
28
|
-
- Added streamlined workflow for using asset data between operations
|
|
29
|
-
|
|
30
|
-
### [1.2.8] - 2025-01-21
|
|
31
|
-
- Fixed asset passwords create/update operations with required fields and enhanced validation
|
|
32
|
-
- Improved field validation and error handling for asset password operations
|
|
9
|
+
[](https://buymeacoffee.com/msoukhomlinov)
|
|
33
10
|
|
|
34
|
-
|
|
11
|
+
## What's New in 1.3.5 (2025-05-27)
|
|
35
12
|
|
|
36
|
-
|
|
13
|
+
- The `Lists` and `List Options` resources are now managed as separate, distinct resources, each with their own full set of CRUD operations for improved clarity and flexibility. This change allows you to manage lists themselves and the items within those lists independently.
|
|
14
|
+
- Management of asset fields is now performed via three new dedicated resources: `Asset Standard Field`, `Asset Custom Field`, and `Asset Link Field`. Field-level operations (get/update) are no longer handled via the main Asset resource, but through these new resources for improved clarity and modularity.
|
|
15
|
+
- **Public Photos resource improvements:**
|
|
16
|
+
- Filter fields (`Record Type Filter` and `Record ID Filter`) are now grouped in a single optional "Filter" fixed collection for the Get Many operation, improving UI consistency and usability.
|
|
17
|
+
- The Get by ID operation now fetches public photos page by page, checking each page for the requested ID and returning as soon as it is found. This is much more efficient for large datasets.
|
|
18
|
+
- Documentation and type definitions for Public Photos have been updated for clarity and alignment with the API.
|
|
37
19
|
|
|
38
|
-
|
|
20
|
+
## Recent Changes
|
|
39
21
|
|
|
40
|
-
|
|
22
|
+
### [1.3.4] - 2025-05-17
|
|
23
|
+
- Enhanced website operations with full field support, including new email security fields
|
|
24
|
+
- Added full CRUD support for VLAN Zones and VLAN resources (new in Hudu API v2.37)
|
|
25
|
+
- Fixed Asset Link Field Selector not loading properly in update operations
|
|
41
26
|
|
|
42
|
-
|
|
27
|
+
> **Note:** Some features in this version require Hudu API v2.37.0 to function properly.
|
|
43
28
|
|
|
44
|
-
[
|
|
45
|
-
[Credentials](#credentials)
|
|
46
|
-
[Features](#features)
|
|
47
|
-
[Supported Resources & Operations](#supported-resources--operations)
|
|
48
|
-
[Resources](#resources)
|
|
49
|
-
[Contributing](#contributing)
|
|
50
|
-
[Support](#support)
|
|
51
|
-
[License](#license)
|
|
29
|
+
(For full change history, see [CHANGELOG.md](CHANGELOG.md))
|
|
52
30
|
|
|
53
31
|
## Installation
|
|
54
32
|
|
|
@@ -74,133 +52,97 @@ To use this node, you need to:
|
|
|
74
52
|
- Date range filtering with preset options
|
|
75
53
|
- Automatic type conversion and validation
|
|
76
54
|
- Debug logging for troubleshooting
|
|
55
|
+
- **Full CRUD support for VLANs and VLAN Zones**
|
|
56
|
+
- **Websites resource now supports all fields, including new email security options**
|
|
77
57
|
|
|
78
58
|
## Supported Resources & Operations
|
|
79
59
|
|
|
80
60
|
### Activity Logs
|
|
81
|
-
|
|
82
61
|
- Get all activity logs with filtering support
|
|
83
62
|
- Filter by user, action, and date range
|
|
84
63
|
|
|
85
64
|
### API Info
|
|
86
|
-
|
|
87
65
|
- Get API information and version details
|
|
88
66
|
|
|
89
67
|
### Articles
|
|
90
|
-
|
|
91
|
-
-
|
|
92
|
-
- Update articles with flexible field updates
|
|
93
|
-
- Archive and unarchive articles
|
|
94
|
-
- Delete articles
|
|
95
|
-
- Get single article details
|
|
96
|
-
- List all articles with comprehensive filtering:
|
|
97
|
-
- Company ID
|
|
98
|
-
- Draft status
|
|
99
|
-
- Sharing status
|
|
100
|
-
- Folder ID
|
|
101
|
-
- Name exact match
|
|
102
|
-
- Fuzzy search
|
|
103
|
-
- Updated date range
|
|
68
|
+
- Create, update, archive, unarchive, delete, and retrieve articles
|
|
69
|
+
- List all articles with comprehensive filtering (company, draft, sharing, folder, name, fuzzy search, updated date range)
|
|
104
70
|
- Get article version history
|
|
105
71
|
|
|
106
|
-
### Asset
|
|
72
|
+
### Asset
|
|
73
|
+
- **Manage core asset lifecycle & properties**: Create, retrieve, update core details, archive, unarchive, move layout, and delete assets
|
|
74
|
+
- Link assets to companies
|
|
75
|
+
- Get single asset details, including all its field values
|
|
76
|
+
- List all assets with enhanced filtering (e.g., by company, update date, archived status)
|
|
107
77
|
|
|
78
|
+
### Asset Layouts
|
|
108
79
|
- Create and manage asset layout templates
|
|
109
80
|
- Get layout fields and configurations
|
|
110
81
|
- List all layouts with filtering support
|
|
111
|
-
- **Advanced custom field support:** Add hints, min/max, linkable asset layout IDs, expiration, options, and more to your custom fields. Use the "Other Data" input to specify any additional API-supported properties
|
|
82
|
+
- **Advanced custom field support:** Add hints, min/max, linkable asset layout IDs, expiration, options, and more to your custom fields. Use the "Other Data" input to specify any additional API-supported properties
|
|
112
83
|
|
|
113
|
-
### Asset
|
|
84
|
+
### Asset Layout Fields
|
|
85
|
+
- Manage individual fields within asset layouts
|
|
114
86
|
|
|
87
|
+
### Asset Passwords
|
|
115
88
|
- Create and manage asset-related passwords
|
|
116
89
|
- Link passwords to assets and companies
|
|
117
90
|
- Filter by company and resource types
|
|
118
91
|
|
|
119
|
-
### Assets
|
|
120
|
-
|
|
121
|
-
- Create assets with custom fields and tags
|
|
122
|
-
- Link assets to companies
|
|
123
|
-
- Update asset details
|
|
124
|
-
- Archive/unarchive assets
|
|
125
|
-
- Delete assets
|
|
126
|
-
- Get single asset details
|
|
127
|
-
- List all assets with enhanced filtering support:
|
|
128
|
-
- Company association
|
|
129
|
-
- Updated date range
|
|
130
|
-
- Custom field values
|
|
131
|
-
- **Return as Asset Links** option for custom tag support (now available for both Get and Get Many)
|
|
132
|
-
- Optimised asset creation and update operations for both standard and custom fields
|
|
133
|
-
- Enhanced UI with dynamic field validation and intuitive field descriptions
|
|
134
|
-
- Streamlined workflow for using asset data between operations
|
|
135
|
-
- **Asset link/tag fields are serialised as JSON for API compatibility**
|
|
136
|
-
|
|
137
|
-
Note: Custom field support has some limitations:
|
|
138
|
-
- Legacy list fields require manual value entry (picklist conversion not implemented due to Hudu deprecating this feature)
|
|
139
|
-
- New list field sources not yet available via Hudu API - requires manual ID configuration
|
|
140
|
-
|
|
141
92
|
### Cards
|
|
142
|
-
|
|
143
93
|
- Lookup cards by integration
|
|
144
94
|
- Jump to card functionality
|
|
145
95
|
- Filter by integration type and slug
|
|
146
96
|
|
|
147
97
|
### Companies
|
|
148
|
-
|
|
149
|
-
- Create companies with detailed information
|
|
150
|
-
- Update company details
|
|
151
|
-
- Delete companies
|
|
152
|
-
- Get single company information
|
|
98
|
+
- Create, update, delete, and retrieve companies
|
|
153
99
|
- List all companies with filtering support
|
|
154
100
|
- Jump to company by integration
|
|
155
101
|
|
|
156
102
|
### Expirations
|
|
157
|
-
|
|
158
|
-
- Get all expirations with comprehensive filtering:
|
|
159
|
-
- Company ID
|
|
160
|
-
- Expiration type
|
|
161
|
-
- Resource ID
|
|
162
|
-
- Resource type
|
|
163
|
-
- Date ranges
|
|
103
|
+
- Get all expirations with comprehensive filtering (company, expiration type, resource ID/type, date ranges)
|
|
164
104
|
|
|
165
105
|
### Folders
|
|
166
|
-
|
|
167
106
|
- Create and manage document folders
|
|
168
107
|
- Support for nested folder structures
|
|
169
108
|
- Filter by parent folder
|
|
170
109
|
- Track child folder status
|
|
171
110
|
|
|
172
111
|
### IP Addresses
|
|
173
|
-
|
|
174
112
|
- Track and manage IP addresses
|
|
175
113
|
- Link to companies and networks
|
|
176
114
|
- Filter by company and network
|
|
177
115
|
|
|
178
|
-
###
|
|
116
|
+
### Lists
|
|
117
|
+
- Create, update, retrieve, and delete lists
|
|
118
|
+
- Use this resource to manage the lists themselves
|
|
119
|
+
- Filter lists by name or query
|
|
120
|
+
|
|
121
|
+
### List Options
|
|
122
|
+
- Create, update, retrieve, and delete list items within a specific list
|
|
123
|
+
- Use this resource to manage the items/options of a list
|
|
179
124
|
|
|
125
|
+
### Magic Dash
|
|
180
126
|
- Access Magic Dash functionality
|
|
181
127
|
- Filter by company and title
|
|
182
128
|
- Delete by title and company name
|
|
183
129
|
|
|
184
130
|
### Matchers
|
|
185
|
-
|
|
186
131
|
- Configure and manage integration matchers
|
|
187
132
|
- Filter by match status and company
|
|
188
133
|
- Support for sync identifiers
|
|
189
134
|
|
|
190
135
|
### Networks
|
|
191
|
-
|
|
192
136
|
- Create and manage network information
|
|
193
137
|
- Link to companies
|
|
194
138
|
- Filter by company and attributes
|
|
195
139
|
|
|
196
140
|
### Password Folders
|
|
197
|
-
|
|
198
|
-
- Create and organize password folders
|
|
141
|
+
- Create and organise password folders
|
|
199
142
|
- Support for folder hierarchy
|
|
200
143
|
- Filter by parent folder
|
|
201
144
|
|
|
202
145
|
### Procedures
|
|
203
|
-
|
|
204
146
|
- Create and manage procedures
|
|
205
147
|
- Create from templates
|
|
206
148
|
- Duplicate existing procedures
|
|
@@ -208,22 +150,29 @@ Note: Custom field support has some limitations:
|
|
|
208
150
|
- Track task completion
|
|
209
151
|
|
|
210
152
|
### Relations
|
|
211
|
-
|
|
212
153
|
- Create and manage resource relationships
|
|
213
154
|
- Support for various resource types
|
|
214
155
|
- Filter by relationship types and directions
|
|
215
156
|
|
|
216
157
|
### Users
|
|
217
|
-
|
|
218
158
|
- Get user information
|
|
219
159
|
- List all users
|
|
220
160
|
- Filter by role and status
|
|
221
161
|
|
|
222
|
-
###
|
|
162
|
+
### VLANs
|
|
163
|
+
- Full CRUD support for VLANs, including filtering by company, name, and VLAN ID
|
|
164
|
+
|
|
165
|
+
### VLAN Zones
|
|
166
|
+
- Full CRUD support for VLAN Zones, including filtering by company, name, archive status, and date ranges
|
|
167
|
+
|
|
168
|
+
### Uploads
|
|
169
|
+
- Manage file uploads
|
|
223
170
|
|
|
171
|
+
### Websites
|
|
224
172
|
- Manage website records
|
|
225
173
|
- Link to companies
|
|
226
174
|
- Filter by company and status
|
|
175
|
+
- **All fields supported, including new email security fields:** `enable_dmarc_tracking`, `enable_dkim_tracking`, `enable_spf_tracking`, and more
|
|
227
176
|
|
|
228
177
|
## Resources
|
|
229
178
|
|
|
@@ -242,7 +191,6 @@ Contributions are welcome! If you'd like to contribute to this project:
|
|
|
242
191
|
5. Open a Pull Request
|
|
243
192
|
|
|
244
193
|
Please ensure your PR:
|
|
245
|
-
|
|
246
194
|
- Clearly describes the changes
|
|
247
195
|
- Includes any relevant documentation updates
|
|
248
196
|
- Follows the existing code style
|
|
@@ -29,13 +29,13 @@ const debugConfig_1 = require("./utils/debugConfig");
|
|
|
29
29
|
const descriptions = __importStar(require("./descriptions"));
|
|
30
30
|
const resources_1 = require("./descriptions/resources");
|
|
31
31
|
const resources = __importStar(require("./resources"));
|
|
32
|
-
const
|
|
33
|
-
const
|
|
34
|
-
const
|
|
35
|
-
const
|
|
32
|
+
const optionLoaders = __importStar(require("./optionLoaders"));
|
|
33
|
+
const getAssets_1 = require("./optionLoaders/assets/getAssets");
|
|
34
|
+
const getAssetsForCompany_1 = require("./optionLoaders/assets/getAssetsForCompany");
|
|
35
|
+
const getAssetCustomFields_1 = require("./optionLoaders/assets/getAssetCustomFields");
|
|
36
36
|
const getAssetLayoutFields_1 = require("./optionLoaders/asset_layouts/getAssetLayoutFields");
|
|
37
|
-
const
|
|
38
|
-
const
|
|
37
|
+
const getAssetLinkFields_1 = require("./optionLoaders/asset_layouts/getAssetLinkFields");
|
|
38
|
+
const getLinkableAssets_1 = require("./optionLoaders/assets/getLinkableAssets");
|
|
39
39
|
class Hudu {
|
|
40
40
|
constructor() {
|
|
41
41
|
this.description = {
|
|
@@ -84,6 +84,7 @@ class Hudu {
|
|
|
84
84
|
...descriptions.expirationsOperations,
|
|
85
85
|
...descriptions.folderOperations,
|
|
86
86
|
...descriptions.ipAddressOperations,
|
|
87
|
+
...descriptions.listOptionsOperations,
|
|
87
88
|
...descriptions.listsOperations,
|
|
88
89
|
...descriptions.magicDashOperations,
|
|
89
90
|
...descriptions.matchersOperations,
|
|
@@ -98,18 +99,24 @@ class Hudu {
|
|
|
98
99
|
...descriptions.uploadsOperations,
|
|
99
100
|
...descriptions.userOperations,
|
|
100
101
|
...descriptions.websitesOperations,
|
|
102
|
+
...descriptions.vlansOperations,
|
|
103
|
+
...descriptions.vlanZonesOperations,
|
|
101
104
|
...descriptions.activityLogsFields,
|
|
102
105
|
...descriptions.apiInfoFields,
|
|
103
106
|
...descriptions.articlesFields,
|
|
107
|
+
...descriptions.assetCustomFieldProperties,
|
|
104
108
|
...descriptions.assetLayoutFields,
|
|
105
109
|
...descriptions.assetLayoutFieldFields,
|
|
110
|
+
...descriptions.assetLinkFieldProperties,
|
|
106
111
|
...descriptions.assetPasswordFields,
|
|
107
112
|
...descriptions.assetsFields,
|
|
113
|
+
...descriptions.assetStandardFieldDescription,
|
|
108
114
|
...descriptions.cardsFields,
|
|
109
115
|
...descriptions.companiesFields,
|
|
110
116
|
...descriptions.expirationsFields,
|
|
111
117
|
...descriptions.folderFields,
|
|
112
118
|
...descriptions.ipAddressFields,
|
|
119
|
+
...descriptions.listOptionsFields,
|
|
113
120
|
...descriptions.listsFields,
|
|
114
121
|
...descriptions.magicDashFields,
|
|
115
122
|
...descriptions.matchersFields,
|
|
@@ -124,21 +131,49 @@ class Hudu {
|
|
|
124
131
|
...descriptions.uploadsFields,
|
|
125
132
|
...descriptions.userFields,
|
|
126
133
|
...descriptions.websitesFields,
|
|
134
|
+
...descriptions.vlansFields,
|
|
135
|
+
...descriptions.vlanZonesFields,
|
|
127
136
|
],
|
|
128
137
|
};
|
|
129
138
|
this.methods = {
|
|
130
139
|
loadOptions: {
|
|
131
|
-
getUsers:
|
|
132
|
-
getCompanies:
|
|
133
|
-
getAssetLayouts:
|
|
134
|
-
getAssetLayoutFields:
|
|
135
|
-
getAssetLayoutFieldValues:
|
|
136
|
-
getAssets:
|
|
137
|
-
|
|
140
|
+
getUsers: optionLoaders.getUsers,
|
|
141
|
+
getCompanies: optionLoaders.getCompanies,
|
|
142
|
+
getAssetLayouts: optionLoaders.getAssetLayouts,
|
|
143
|
+
getAssetLayoutFields: optionLoaders.getAssetLayoutFields,
|
|
144
|
+
getAssetLayoutFieldValues: optionLoaders.getAssetLayoutFieldValues,
|
|
145
|
+
getAssets: getAssets_1.getAssets,
|
|
146
|
+
getAssetsForCompany: getAssetsForCompany_1.getAssetsForCompany,
|
|
147
|
+
getCustomFieldsLayoutFields: optionLoaders.getCustomFieldsLayoutFields,
|
|
148
|
+
getLists: optionLoaders.getLists,
|
|
149
|
+
getAssetCustomFields: getAssetCustomFields_1.getAssetCustomFields,
|
|
150
|
+
getAssetLinkFields: getAssetLinkFields_1.getAssetLinkFields,
|
|
151
|
+
getLinkableAssets: getLinkableAssets_1.getLinkableAssets,
|
|
152
|
+
async getStandardAssetFields() {
|
|
153
|
+
return [
|
|
154
|
+
{ name: 'Name', value: 'name' },
|
|
155
|
+
{ name: 'Archived', value: 'archived' },
|
|
156
|
+
{ name: 'Primary Serial', value: 'primary_serial' },
|
|
157
|
+
{ name: 'Primary Model', value: 'primary_model' },
|
|
158
|
+
{ name: 'Primary Manufacturer', value: 'primary_manufacturer' },
|
|
159
|
+
{ name: 'Primary Mail', value: 'primary_mail' },
|
|
160
|
+
];
|
|
161
|
+
},
|
|
162
|
+
async getBinaryProperties() {
|
|
163
|
+
var _a, _b;
|
|
164
|
+
const items = ((_b = (_a = this).getInputData) === null || _b === void 0 ? void 0 : _b.call(_a)) || [];
|
|
165
|
+
const item = items[0];
|
|
166
|
+
if (!item || !item.binary) {
|
|
167
|
+
return [];
|
|
168
|
+
}
|
|
169
|
+
return Object.keys(item.binary).map((key) => ({
|
|
170
|
+
name: key,
|
|
171
|
+
value: key,
|
|
172
|
+
}));
|
|
173
|
+
},
|
|
138
174
|
},
|
|
139
175
|
resourceMapping: {
|
|
140
176
|
mapAssetLayoutFieldsForResource: getAssetLayoutFields_1.mapAssetLayoutFieldsForResource,
|
|
141
|
-
mapAssetTagFieldsForResource: getAssetTagFields_1.mapAssetTagFieldsForResource,
|
|
142
177
|
},
|
|
143
178
|
};
|
|
144
179
|
}
|
|
@@ -185,6 +220,15 @@ class Hudu {
|
|
|
185
220
|
case 'assets':
|
|
186
221
|
responseData = await resources.handleAssetsOperation.call(this, operation, i);
|
|
187
222
|
break;
|
|
223
|
+
case 'assetStandardField':
|
|
224
|
+
responseData = await resources.handleAssetStandardFieldOperation.call(this, operation, i);
|
|
225
|
+
break;
|
|
226
|
+
case 'assetLinkField':
|
|
227
|
+
responseData = await resources.handleAssetLinkFieldOperation.call(this, operation, i);
|
|
228
|
+
break;
|
|
229
|
+
case 'assetCustomField':
|
|
230
|
+
responseData = await resources.handleAssetCustomFieldOperation.call(this, operation, i);
|
|
231
|
+
break;
|
|
188
232
|
case 'cards':
|
|
189
233
|
responseData = await resources.handleCardOperation.call(this, operation, i);
|
|
190
234
|
break;
|
|
@@ -200,6 +244,9 @@ class Hudu {
|
|
|
200
244
|
case 'ipAddresses':
|
|
201
245
|
responseData = await resources.handleIpAddressesOperation.call(this, operation, i);
|
|
202
246
|
break;
|
|
247
|
+
case 'list_options':
|
|
248
|
+
responseData = await resources.handleListOptionsOperation.call(this, operation, i);
|
|
249
|
+
break;
|
|
203
250
|
case 'lists':
|
|
204
251
|
responseData = await resources.handleListsOperation.call(this, operation, i);
|
|
205
252
|
break;
|
|
@@ -242,6 +289,12 @@ class Hudu {
|
|
|
242
289
|
case 'websites':
|
|
243
290
|
responseData = await resources.handleWebsitesOperation.call(this, operation, i);
|
|
244
291
|
break;
|
|
292
|
+
case 'vlans':
|
|
293
|
+
responseData = await resources.handleVlansOperation.call(this, operation, i);
|
|
294
|
+
break;
|
|
295
|
+
case 'vlan_zones':
|
|
296
|
+
responseData = await resources.handleVlanZonesOperation.call(this, operation, i);
|
|
297
|
+
break;
|
|
245
298
|
default:
|
|
246
299
|
throw new n8n_workflow_1.NodeOperationError(this.getNode(), `The resource "${resource}" is not known!`);
|
|
247
300
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Hudu.node.js","sourceRoot":"","sources":["../../../../src/nodes/Hudu/Hudu.node.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"Hudu.node.js","sourceRoot":"","sources":["../../../../src/nodes/Hudu/Hudu.node.ts"],"names":[],"mappings":"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"}
|