@blickwerk/n8n-nodes-microsoft-planner 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
CHANGED
|
@@ -86,7 +86,7 @@ Configure the Microsoft Planner OAuth2 API credentials in n8n:
|
|
|
86
86
|
|
|
87
87
|
## Features
|
|
88
88
|
|
|
89
|
-
- **
|
|
89
|
+
- **Resource Locator UI**: Choose between "From List" (dropdown) or "By ID" (manual input) for Buckets
|
|
90
90
|
- **User Assignment**: Assign tasks to users by email address
|
|
91
91
|
- **Priority Management**: Easy-to-use priority dropdown (Urgent, Important, Medium, Low)
|
|
92
92
|
- **Full CRUD Operations**: Create, Read, Update, and Delete tasks
|
|
@@ -125,17 +125,18 @@ Optional fields:
|
|
|
125
125
|
### Getting Tasks
|
|
126
126
|
|
|
127
127
|
**Get a single task:**
|
|
128
|
-
-
|
|
128
|
+
- Enter the **Task ID** manually (no dropdown available for single task lookups)
|
|
129
129
|
|
|
130
130
|
**Get many tasks:**
|
|
131
|
-
-
|
|
132
|
-
-
|
|
131
|
+
- Choose filter type: **Plan** or **Bucket**
|
|
132
|
+
- Enter the **Plan ID**
|
|
133
|
+
- If filtering by Bucket: Select bucket from dropdown or enter Bucket ID manually
|
|
133
134
|
- Set a limit or return all tasks
|
|
134
135
|
|
|
135
136
|
### Updating a Task
|
|
136
137
|
|
|
137
138
|
To update a task:
|
|
138
|
-
1.
|
|
139
|
+
1. Enter the **Task ID** manually
|
|
139
140
|
2. Update any of these fields:
|
|
140
141
|
- Title
|
|
141
142
|
- Description
|
|
@@ -161,13 +162,13 @@ You can find your Plan ID in several ways:
|
|
|
161
162
|
- Run: `GET /me/planner/plans`
|
|
162
163
|
- Copy the `id` field from the plan you want
|
|
163
164
|
|
|
164
|
-
###
|
|
165
|
+
### Resource Locator (From List / By ID)
|
|
165
166
|
|
|
166
|
-
|
|
167
|
-
- **
|
|
168
|
-
- **
|
|
167
|
+
When creating tasks or filtering by bucket:
|
|
168
|
+
- **From List**: Select from dropdown (automatically loads based on Plan ID)
|
|
169
|
+
- **By ID**: Manually enter the ID if you already know it
|
|
169
170
|
|
|
170
|
-
|
|
171
|
+
For Get/Update/Delete operations, you need to manually enter the Task ID.
|
|
171
172
|
|
|
172
173
|
## Compatibility
|
|
173
174
|
|
|
@@ -181,6 +182,25 @@ Tested with n8n version 1.0.0 and above.
|
|
|
181
182
|
|
|
182
183
|
## Version History
|
|
183
184
|
|
|
185
|
+
### 1.3.4
|
|
186
|
+
- **Fixed "Empty Payload" error in Update Task**
|
|
187
|
+
- Update Task now works correctly even when no fields are selected
|
|
188
|
+
- Only sends PATCH request when there are actual fields to update
|
|
189
|
+
- Improved error handling for update operations
|
|
190
|
+
|
|
191
|
+
### 1.3.3
|
|
192
|
+
- **Restructured Get Many Tasks for better UX**
|
|
193
|
+
- Added "Filter By" dropdown to choose between Plan or Bucket filtering
|
|
194
|
+
- Plan ID and Bucket are now separate fields (not in collection)
|
|
195
|
+
- Bucket dropdown now properly loads when Plan ID is entered
|
|
196
|
+
- Simplified Get/Update/Delete Task to use "By ID" only (no dropdown)
|
|
197
|
+
- Resource Locator UI for buckets with "From List" / "By ID" toggle
|
|
198
|
+
|
|
199
|
+
### 1.3.0 - 1.3.2
|
|
200
|
+
- Added resource locator UI for Buckets and Tasks
|
|
201
|
+
- Converted from loadOptions to listSearch methods
|
|
202
|
+
- Various fixes for dropdown loading issues
|
|
203
|
+
|
|
184
204
|
### 1.2.4
|
|
185
205
|
- **Fixed Bucket and Task dropdowns not showing!**
|
|
186
206
|
- Changed field type from 'string' back to 'options' for proper dropdown display
|
|
@@ -283,9 +283,13 @@ class MicrosoftPlanner {
|
|
|
283
283
|
console.warn('No valid user IDs found for assignment. Check if User.Read.All permission is granted.');
|
|
284
284
|
}
|
|
285
285
|
}
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
286
|
+
let responseData = currentTask;
|
|
287
|
+
// Only send PATCH request if there are fields to update (excluding description)
|
|
288
|
+
if (Object.keys(body).length > 0) {
|
|
289
|
+
responseData = await GenericFunctions_1.microsoftApiRequest.call(this, 'PATCH', `/planner/tasks/${taskId}`, body, {}, undefined, {
|
|
290
|
+
'If-Match': eTag,
|
|
291
|
+
});
|
|
292
|
+
}
|
|
289
293
|
// Update description if provided
|
|
290
294
|
if (updateFields.description) {
|
|
291
295
|
const details = await GenericFunctions_1.microsoftApiRequest.call(this, 'GET', `/planner/tasks/${taskId}/details`);
|