@@ -7,7 +7,7 @@ ms.reviewer: Alexander.Filipin
7
7
ms.topic : tutorial
8
8
ms.localizationpriority : medium
9
9
ms.subservice : entra-id-governance
10
- ms.date : 04/13 /2024
10
+ ms.date : 08/29 /2024
11
11
# Customer intent: As a developer integrating with Microsoft Graph, I want to use lifecycle workflows APIs to automate employee mover tasks, so that I can ensure proper security, efficient lifecycle management, and compliance in my organization.
12
12
---
13
13
@@ -48,15 +48,12 @@ The following request creates a mover workflow with the following settings:
48
48
+ The workflow runs when an employee is added to the ** Sales** department.
49
49
+ Only one built-in task runs in this workflow: to send an email to the employee's manager notifying them of the move. This task is identified in lifecycle workflows by the ** taskDefinitionId** ` aab41899-9972-422a-9d97-f626014578b7 ` .
50
50
51
-
52
-
53
- # [ HTTP] ( #tab/http )
54
51
<!-- {
55
52
"blockType": "request",
56
53
"name": "tutorial_lifecycle_workflows_mover_create_workflow"
57
54
}-->
58
55
``` http
59
- POST https://graph.microsoft.com/beta /identityGovernance/lifecycleWorkflows/workflows
56
+ POST https://graph.microsoft.com/v1.0 /identityGovernance/lifecycleWorkflows/workflows
60
57
Content-type: application/json
61
58
62
59
{
@@ -93,44 +90,10 @@ Content-type: application/json
93
90
}
94
91
```
95
92
96
- # [ C#] ( #tab/csharp )
97
- [ !INCLUDE [ sample-code] ( ../includes/snippets/csharp/beta/tutorial-lifecycle-workflows-mover-create-workflow-csharp-snippets.md )]
98
- [ !INCLUDE [ sdk-documentation] ( ../includes/snippets/snippets-sdk-documentation-link.md )]
99
-
100
- # [ CLI] ( #tab/cli )
101
- [ !INCLUDE [ sample-code] ( ../includes/snippets/cli/beta/tutorial-lifecycle-workflows-mover-create-workflow-cli-snippets.md )]
102
- [ !INCLUDE [ sdk-documentation] ( ../includes/snippets/snippets-sdk-documentation-link.md )]
103
-
104
- # [ Go] ( #tab/go )
105
- [ !INCLUDE [ sample-code] ( ../includes/snippets/go/beta/tutorial-lifecycle-workflows-mover-create-workflow-go-snippets.md )]
106
- [ !INCLUDE [ sdk-documentation] ( ../includes/snippets/snippets-sdk-documentation-link.md )]
107
-
108
- # [ Java] ( #tab/java )
109
- [ !INCLUDE [ sample-code] ( ../includes/snippets/java/beta/tutorial-lifecycle-workflows-mover-create-workflow-java-snippets.md )]
110
- [ !INCLUDE [ sdk-documentation] ( ../includes/snippets/snippets-sdk-documentation-link.md )]
111
-
112
- # [ JavaScript] ( #tab/javascript )
113
- [ !INCLUDE [ sample-code] ( ../includes/snippets/javascript/beta/tutorial-lifecycle-workflows-mover-create-workflow-javascript-snippets.md )]
114
- [ !INCLUDE [ sdk-documentation] ( ../includes/snippets/snippets-sdk-documentation-link.md )]
115
-
116
- # [ PHP] ( #tab/php )
117
- [ !INCLUDE [ sample-code] ( ../includes/snippets/php/beta/tutorial-lifecycle-workflows-mover-create-workflow-php-snippets.md )]
118
- [ !INCLUDE [ sdk-documentation] ( ../includes/snippets/snippets-sdk-documentation-link.md )]
119
-
120
- # [ PowerShell] ( #tab/powershell )
121
- [ !INCLUDE [ sample-code] ( ../includes/snippets/powershell/beta/tutorial-lifecycle-workflows-mover-create-workflow-powershell-snippets.md )]
122
- [ !INCLUDE [ sdk-documentation] ( ../includes/snippets/snippets-sdk-documentation-link.md )]
123
-
124
- # [ Python] ( #tab/python )
125
- [ !INCLUDE [ sample-code] ( ../includes/snippets/python/beta/tutorial-lifecycle-workflows-mover-create-workflow-python-snippets.md )]
126
- [ !INCLUDE [ sdk-documentation] ( ../includes/snippets/snippets-sdk-documentation-link.md )]
127
-
128
- ---
129
-
130
- ---
131
-
132
93
### Response
133
94
95
+ The following example shows the response.
96
+
134
97
<!-- {
135
98
"blockType": "response",
136
99
"truncated": true,
@@ -141,7 +104,7 @@ HTTP/1.1 201 Created
141
104
Content-Type: application/json
142
105
143
106
{
144
- "@odata.context": "https://graph.microsoft.com/beta /$metadata#identityGovernance/lifecycleWorkflows/workflows/$entity",
107
+ "@odata.context": "https://graph.microsoft.com/v1.0 /$metadata#identityGovernance/lifecycleWorkflows/workflows/$entity",
145
108
"category": "mover",
146
109
"description": "Configure mover tasks for a user moved to the Sales department.",
147
110
"displayName": "Added to Sales department workflow",
@@ -175,7 +138,6 @@ Content-Type: application/json
175
138
176
139
Now that the workflow is created, take note of your workflow ID, and then add the user you want to test the workflow on to the * Sales* department. After 15-30 minutes, you can determine whether the user is queued to have the workflow run for them by checking the execution scope of your workflow. To determine whether a user is queued to have the workflow run for them, use the following request.
177
140
178
- # [ HTTP] ( #tab/http )
179
141
<!-- {
180
142
"blockType": "request",
181
143
"name": "tutorial_lifecycle_workflows_mover_scope_workflow"
@@ -185,42 +147,11 @@ POST https://graph.microsoft.com/v1.0/identityGovernance/lifecycleWorkflows/work
185
147
186
148
```
187
149
188
- # [ C#] ( #tab/csharp )
189
- [ !INCLUDE [ snippet-not-available] ( ../includes/snippets/snippet-not-available.md )]
190
- [ !INCLUDE [ sdk-documentation] ( ../includes/snippets/snippets-sdk-documentation-link.md )]
191
-
192
- # [ CLI] ( #tab/cli )
193
- [ !INCLUDE [ snippet-not-available] ( ../includes/snippets/snippet-not-available.md )]
194
- [ !INCLUDE [ sdk-documentation] ( ../includes/snippets/snippets-sdk-documentation-link.md )]
195
-
196
- # [ Go] ( #tab/go )
197
- [ !INCLUDE [ snippet-not-available] ( ../includes/snippets/snippet-not-available.md )]
198
- [ !INCLUDE [ sdk-documentation] ( ../includes/snippets/snippets-sdk-documentation-link.md )]
199
-
200
- # [ Java] ( #tab/java )
201
- [ !INCLUDE [ snippet-not-available] ( ../includes/snippets/snippet-not-available.md )]
202
- [ !INCLUDE [ sdk-documentation] ( ../includes/snippets/snippets-sdk-documentation-link.md )]
203
-
204
- # [ JavaScript] ( #tab/javascript )
205
- [ !INCLUDE [ sample-code] ( ../includes/snippets/javascript/v1/tutorial-lifecycle-workflows-mover-scope-workflow-javascript-snippets.md )]
206
- [ !INCLUDE [ sdk-documentation] ( ../includes/snippets/snippets-sdk-documentation-link.md )]
207
-
208
- # [ PHP] ( #tab/php )
209
- [ !INCLUDE [ snippet-not-available] ( ../includes/snippets/snippet-not-available.md )]
210
- [ !INCLUDE [ sdk-documentation] ( ../includes/snippets/snippets-sdk-documentation-link.md )]
211
-
212
- # [ PowerShell] ( #tab/powershell )
213
- [ !INCLUDE [ snippet-not-available] ( ../includes/snippets/snippet-not-available.md )]
214
- [ !INCLUDE [ sdk-documentation] ( ../includes/snippets/snippets-sdk-documentation-link.md )]
215
-
216
- # [ Python] ( #tab/python )
217
- [ !INCLUDE [ snippet-not-available] ( ../includes/snippets/snippet-not-available.md )]
218
- [ !INCLUDE [ sdk-documentation] ( ../includes/snippets/snippets-sdk-documentation-link.md )]
219
-
220
- ---
221
150
222
151
### Response
223
152
153
+ The following example shows the response.
154
+
224
155
<!-- {
225
156
"blockType": "response",
226
157
"truncated": true,
@@ -231,7 +162,7 @@ HTTP/1.1 200 OK
231
162
Content-Type: application/json
232
163
233
164
{
234
- "@odata.context": "https://graph.microsoft.com/beta /$metadata#Collection(microsoft.graph.identityGovernance.userProcessingResult)",
165
+ "@odata.context": "https://graph.microsoft.com/v1.0 /$metadata#Collection(microsoft.graph.identityGovernance.userProcessingResult)",
235
166
"@microsoft.graph.tips": "Use $select to choose only the properties your app needs, as this can lead to performance improvements. For example: GET identityGovernance/lifecycleWorkflows/workflows('<guid>')/executionScope?$select=completedDateTime,failedTasksCount",
236
167
"value": [
237
168
{
@@ -264,7 +195,8 @@ At any time, you can monitor the status of the workflows and their associated ta
264
195
265
196
#### Request
266
197
267
- # [ HTTP] ( #tab/http )
198
+ The following example shows a request.
199
+
268
200
<!-- {
269
201
"blockType": "request",
270
202
"name": "tutorial_lifecycle_workflows_mover_list_userProcessingResults"
@@ -273,44 +205,10 @@ At any time, you can monitor the status of the workflows and their associated ta
273
205
GET https://graph.microsoft.com/v1.0/identityGovernance/lifecycleWorkflows/workflows/2bb05c85-556a-429a-8c16-16f6be5ef880/userProcessingResults
274
206
```
275
207
276
- # [ C#] ( #tab/csharp )
277
- [ !INCLUDE [ sample-code] ( ../includes/snippets/csharp/v1/tutorial-lifecycle-workflows-mover-list-userprocessingresults-csharp-snippets.md )]
278
- [ !INCLUDE [ sdk-documentation] ( ../includes/snippets/snippets-sdk-documentation-link.md )]
279
-
280
- # [ CLI] ( #tab/cli )
281
- [ !INCLUDE [ sample-code] ( ../includes/snippets/cli/v1/tutorial-lifecycle-workflows-mover-list-userprocessingresults-cli-snippets.md )]
282
- [ !INCLUDE [ sdk-documentation] ( ../includes/snippets/snippets-sdk-documentation-link.md )]
283
-
284
- # [ Go] ( #tab/go )
285
- [ !INCLUDE [ sample-code] ( ../includes/snippets/go/v1/tutorial-lifecycle-workflows-mover-list-userprocessingresults-go-snippets.md )]
286
- [ !INCLUDE [ sdk-documentation] ( ../includes/snippets/snippets-sdk-documentation-link.md )]
287
-
288
- # [ Java] ( #tab/java )
289
- [ !INCLUDE [ sample-code] ( ../includes/snippets/java/v1/tutorial-lifecycle-workflows-mover-list-userprocessingresults-java-snippets.md )]
290
- [ !INCLUDE [ sdk-documentation] ( ../includes/snippets/snippets-sdk-documentation-link.md )]
291
-
292
- # [ JavaScript] ( #tab/javascript )
293
- [ !INCLUDE [ sample-code] ( ../includes/snippets/javascript/v1/tutorial-lifecycle-workflows-mover-list-userprocessingresults-javascript-snippets.md )]
294
- [ !INCLUDE [ sdk-documentation] ( ../includes/snippets/snippets-sdk-documentation-link.md )]
295
-
296
- # [ PHP] ( #tab/php )
297
- [ !INCLUDE [ sample-code] ( ../includes/snippets/php/v1/tutorial-lifecycle-workflows-mover-list-userprocessingresults-php-snippets.md )]
298
- [ !INCLUDE [ sdk-documentation] ( ../includes/snippets/snippets-sdk-documentation-link.md )]
299
-
300
- # [ PowerShell] ( #tab/powershell )
301
- [ !INCLUDE [ sample-code] ( ../includes/snippets/powershell/v1/tutorial-lifecycle-workflows-mover-list-userprocessingresults-powershell-snippets.md )]
302
- [ !INCLUDE [ sdk-documentation] ( ../includes/snippets/snippets-sdk-documentation-link.md )]
303
-
304
- # [ Python] ( #tab/python )
305
- [ !INCLUDE [ sample-code] ( ../includes/snippets/python/v1/tutorial-lifecycle-workflows-mover-list-userprocessingresults-python-snippets.md )]
306
- [ !INCLUDE [ sdk-documentation] ( ../includes/snippets/snippets-sdk-documentation-link.md )]
307
-
308
- ---
309
-
310
- ---
311
-
312
208
#### Response
313
209
210
+ The following example shows the response.
211
+
314
212
<!-- {
315
213
"blockType": "response",
316
214
"truncated": true,
@@ -321,7 +219,7 @@ HTTP/1.1 200 OK
321
219
Content-Type: application/json
322
220
323
221
{
324
- "@odata.context": "https://graph.microsoft.com/beta /$metadata#identityGovernance/lifecycleWorkflows/workflows('2bb05c85-556a-429a-8c16-16f6be5ef880')/userProcessingResults",
222
+ "@odata.context": "https://graph.microsoft.com/v1.0 /$metadata#identityGovernance/lifecycleWorkflows/workflows('2bb05c85-556a-429a-8c16-16f6be5ef880')/userProcessingResults",
325
223
"@microsoft.graph.tips": "Use $select to choose only the properties your app needs, as this can lead to performance improvements. For example: GET identityGovernance/lifecycleWorkflows/workflows('<guid>')/userProcessingResults?$select=completedDateTime,failedTasksCount",
326
224
"value": [
327
225
{
@@ -347,7 +245,8 @@ Content-Type: application/json
347
245
348
246
#### Request
349
247
350
- # [ HTTP] ( #tab/http )
248
+ The following example shows a request.
249
+
351
250
<!-- {
352
251
"blockType": "request",
353
252
"name": "tutorial_lifecycle_workflows_mover_list_userProcessingResults.summary"
@@ -356,44 +255,10 @@ Content-Type: application/json
356
255
GET https://graph.microsoft.com/v1.0/identityGovernance/lifecycleWorkflows/workflows/2bb05c85-556a-429a-8c16-16f6be5ef880/userProcessingResults/summary(startDateTime=2024-03-01T00:00:00Z,endDateTime=2024-03-30T00:00:00Z)
357
256
```
358
257
359
- # [ C#] ( #tab/csharp )
360
- [ !INCLUDE [ sample-code] ( ../includes/snippets/csharp/v1/tutorial-lifecycle-workflows-mover-list-userprocessingresultssummary-csharp-snippets.md )]
361
- [ !INCLUDE [ sdk-documentation] ( ../includes/snippets/snippets-sdk-documentation-link.md )]
362
-
363
- # [ CLI] ( #tab/cli )
364
- [ !INCLUDE [ sample-code] ( ../includes/snippets/cli/v1/tutorial-lifecycle-workflows-mover-list-userprocessingresultssummary-cli-snippets.md )]
365
- [ !INCLUDE [ sdk-documentation] ( ../includes/snippets/snippets-sdk-documentation-link.md )]
366
-
367
- # [ Go] ( #tab/go )
368
- [ !INCLUDE [ sample-code] ( ../includes/snippets/go/v1/tutorial-lifecycle-workflows-mover-list-userprocessingresultssummary-go-snippets.md )]
369
- [ !INCLUDE [ sdk-documentation] ( ../includes/snippets/snippets-sdk-documentation-link.md )]
370
-
371
- # [ Java] ( #tab/java )
372
- [ !INCLUDE [ sample-code] ( ../includes/snippets/java/v1/tutorial-lifecycle-workflows-mover-list-userprocessingresultssummary-java-snippets.md )]
373
- [ !INCLUDE [ sdk-documentation] ( ../includes/snippets/snippets-sdk-documentation-link.md )]
374
-
375
- # [ JavaScript] ( #tab/javascript )
376
- [ !INCLUDE [ sample-code] ( ../includes/snippets/javascript/v1/tutorial-lifecycle-workflows-mover-list-userprocessingresultssummary-javascript-snippets.md )]
377
- [ !INCLUDE [ sdk-documentation] ( ../includes/snippets/snippets-sdk-documentation-link.md )]
378
-
379
- # [ PHP] ( #tab/php )
380
- [ !INCLUDE [ sample-code] ( ../includes/snippets/php/v1/tutorial-lifecycle-workflows-mover-list-userprocessingresultssummary-php-snippets.md )]
381
- [ !INCLUDE [ sdk-documentation] ( ../includes/snippets/snippets-sdk-documentation-link.md )]
382
-
383
- # [ PowerShell] ( #tab/powershell )
384
- [ !INCLUDE [ sample-code] ( ../includes/snippets/powershell/v1/tutorial-lifecycle-workflows-mover-list-userprocessingresultssummary-powershell-snippets.md )]
385
- [ !INCLUDE [ sdk-documentation] ( ../includes/snippets/snippets-sdk-documentation-link.md )]
386
-
387
- # [ Python] ( #tab/python )
388
- [ !INCLUDE [ sample-code] ( ../includes/snippets/python/v1/tutorial-lifecycle-workflows-mover-list-userprocessingresultssummary-python-snippets.md )]
389
- [ !INCLUDE [ sdk-documentation] ( ../includes/snippets/snippets-sdk-documentation-link.md )]
390
-
391
- ---
392
-
393
- ---
394
-
395
258
#### Response
396
259
260
+ The following example shows the response.
261
+
397
262
<!-- {
398
263
"blockType": "response",
399
264
"truncated": true,
0 commit comments