@itentialopensource/adapter-microsoft_graph 1.4.1 → 1.4.3
Sign up to get free protection for your applications and to get access to all the features.
- package/CALLS.md +41 -11
- package/CHANGELOG.md +16 -0
- package/adapter.js +538 -0
- package/entities/Applications/action.json +4 -1
- package/entities/Insights/action.json +4 -1
- package/entities/LabelManagement/action.json +20 -5
- package/entities/Mail/action.json +4 -1
- package/entities/Search/action.json +4 -1
- package/entities/Security/action.json +4 -1
- package/entities/Subscriptions/action.json +4 -1
- package/entities/Teams/action.json +104 -0
- package/entities/Teams/schema.json +5 -0
- package/metadata.json +5 -2
- package/package.json +3 -3
- package/pronghorn.json +281 -0
- package/refs?service=git-upload-pack +0 -0
- package/report/adapterInfo.json +7 -7
- package/test/integration/adapterTestIntegration.js +125 -0
- package/test/unit/adapterTestUnit.js +317 -2
@@ -4,7 +4,10 @@
|
|
4
4
|
"name": "searchmessages",
|
5
5
|
"protocol": "REST",
|
6
6
|
"method": "POST",
|
7
|
-
"entitypath":
|
7
|
+
"entitypath": {
|
8
|
+
"beta": "{base_path}/{version}/beta/search/query?{query}",
|
9
|
+
"v1.0": "{base_path}/{version}/v1.0/search/query?{query}"
|
10
|
+
},
|
8
11
|
"requestSchema": "schema.json",
|
9
12
|
"responseSchema": "schema.json",
|
10
13
|
"timeout": 0,
|
@@ -46,7 +46,10 @@
|
|
46
46
|
"name": "getsecurescorescontrolprofiles",
|
47
47
|
"protocol": "REST",
|
48
48
|
"method": "GET",
|
49
|
-
"entitypath":
|
49
|
+
"entitypath": {
|
50
|
+
"beta": "{base_path}/{version}/beta/security/secureScoreControlProfiles?{query}",
|
51
|
+
"v1.0": "{base_path}/{version}/v1.0/security/secureScoreControlProfiles?{query}"
|
52
|
+
},
|
50
53
|
"requestSchema": "schema.json",
|
51
54
|
"responseSchema": "schema.json",
|
52
55
|
"timeout": 0,
|
@@ -45,7 +45,10 @@
|
|
45
45
|
"name": "createsubscription",
|
46
46
|
"protocol": "REST",
|
47
47
|
"method": "POST",
|
48
|
-
"entitypath":
|
48
|
+
"entitypath": {
|
49
|
+
"beta": "{base_path}/{version}/beta/subscriptions?{query}",
|
50
|
+
"v1.0": "{base_path}/{version}/v1.0/subscriptions?{query}"
|
51
|
+
},
|
49
52
|
"requestSchema": "schema.json",
|
50
53
|
"responseSchema": "schema.json",
|
51
54
|
"timeout": 0,
|
@@ -228,6 +228,27 @@
|
|
228
228
|
}
|
229
229
|
]
|
230
230
|
},
|
231
|
+
{
|
232
|
+
"name": "getMessagesWithoutRepliesInChannel",
|
233
|
+
"protocol": "REST",
|
234
|
+
"method": "GET",
|
235
|
+
"entitypath": "{base_path}/{version}/v1.0/teams/{pathv1}/channels/{pathv2}/messages?{query}",
|
236
|
+
"requestSchema": "schema.json",
|
237
|
+
"responseSchema": "schema.json",
|
238
|
+
"timeout": 0,
|
239
|
+
"sendEmpty": false,
|
240
|
+
"sendGetBody": false,
|
241
|
+
"requestDatatype": "JSON",
|
242
|
+
"responseDatatype": "JSON",
|
243
|
+
"headers": {},
|
244
|
+
"responseObjects": [
|
245
|
+
{
|
246
|
+
"type": "default",
|
247
|
+
"key": "",
|
248
|
+
"mockFile": ""
|
249
|
+
}
|
250
|
+
]
|
251
|
+
},
|
231
252
|
{
|
232
253
|
"name": "createaplaintextchatthreadBeta",
|
233
254
|
"protocol": "REST",
|
@@ -248,6 +269,26 @@
|
|
248
269
|
}
|
249
270
|
]
|
250
271
|
},
|
272
|
+
{
|
273
|
+
"name": "sendChannelMessage",
|
274
|
+
"protocol": "REST",
|
275
|
+
"method": "POST",
|
276
|
+
"entitypath": "{base_path}/{version}/v1.0/teams/{pathv1}/channels/{pathv2}/messages?{query}",
|
277
|
+
"requestSchema": "schema.json",
|
278
|
+
"responseSchema": "schema.json",
|
279
|
+
"timeout": 0,
|
280
|
+
"sendEmpty": false,
|
281
|
+
"requestDatatype": "JSON",
|
282
|
+
"responseDatatype": "JSON",
|
283
|
+
"headers": {},
|
284
|
+
"responseObjects": [
|
285
|
+
{
|
286
|
+
"type": "default",
|
287
|
+
"key": "",
|
288
|
+
"mockFile": ""
|
289
|
+
}
|
290
|
+
]
|
291
|
+
},
|
251
292
|
{
|
252
293
|
"name": "getamessageinachannelBeta",
|
253
294
|
"protocol": "REST",
|
@@ -269,6 +310,27 @@
|
|
269
310
|
}
|
270
311
|
]
|
271
312
|
},
|
313
|
+
{
|
314
|
+
"name": "getSingleMessageInChannel",
|
315
|
+
"protocol": "REST",
|
316
|
+
"method": "GET",
|
317
|
+
"entitypath": "{base_path}/{version}/v1.0/teams/{pathv1}/channels/{pathv2}/messages/{pathv3}?{query}",
|
318
|
+
"requestSchema": "schema.json",
|
319
|
+
"responseSchema": "schema.json",
|
320
|
+
"timeout": 0,
|
321
|
+
"sendEmpty": false,
|
322
|
+
"sendGetBody": false,
|
323
|
+
"requestDatatype": "JSON",
|
324
|
+
"responseDatatype": "JSON",
|
325
|
+
"headers": {},
|
326
|
+
"responseObjects": [
|
327
|
+
{
|
328
|
+
"type": "default",
|
329
|
+
"key": "",
|
330
|
+
"mockFile": ""
|
331
|
+
}
|
332
|
+
]
|
333
|
+
},
|
272
334
|
{
|
273
335
|
"name": "getrepliestoamessageinachannelBeta",
|
274
336
|
"protocol": "REST",
|
@@ -290,6 +352,27 @@
|
|
290
352
|
}
|
291
353
|
]
|
292
354
|
},
|
355
|
+
{
|
356
|
+
"name": "getRepliesToMessageInChannel",
|
357
|
+
"protocol": "REST",
|
358
|
+
"method": "GET",
|
359
|
+
"entitypath": "{base_path}/{version}/v1.0/teams/{pathv1}/channels/{pathv2}/messages/{pathv3}/replies?{query}",
|
360
|
+
"requestSchema": "schema.json",
|
361
|
+
"responseSchema": "schema.json",
|
362
|
+
"timeout": 0,
|
363
|
+
"sendEmpty": false,
|
364
|
+
"sendGetBody": false,
|
365
|
+
"requestDatatype": "JSON",
|
366
|
+
"responseDatatype": "JSON",
|
367
|
+
"headers": {},
|
368
|
+
"responseObjects": [
|
369
|
+
{
|
370
|
+
"type": "default",
|
371
|
+
"key": "",
|
372
|
+
"mockFile": ""
|
373
|
+
}
|
374
|
+
]
|
375
|
+
},
|
293
376
|
{
|
294
377
|
"name": "getareplyofamessageBeta",
|
295
378
|
"protocol": "REST",
|
@@ -311,6 +394,27 @@
|
|
311
394
|
}
|
312
395
|
]
|
313
396
|
},
|
397
|
+
{
|
398
|
+
"name": "getSingleMessageReplyInChannel",
|
399
|
+
"protocol": "REST",
|
400
|
+
"method": "GET",
|
401
|
+
"entitypath": "{base_path}/{version}/v1.0/teams/{pathv1}/channels/{pathv2}/messages/{pathv3}/replies/{pathv4}?{query}",
|
402
|
+
"requestSchema": "schema.json",
|
403
|
+
"responseSchema": "schema.json",
|
404
|
+
"timeout": 0,
|
405
|
+
"sendEmpty": false,
|
406
|
+
"sendGetBody": false,
|
407
|
+
"requestDatatype": "JSON",
|
408
|
+
"responseDatatype": "JSON",
|
409
|
+
"headers": {},
|
410
|
+
"responseObjects": [
|
411
|
+
{
|
412
|
+
"type": "default",
|
413
|
+
"key": "",
|
414
|
+
"mockFile": ""
|
415
|
+
}
|
416
|
+
]
|
417
|
+
},
|
314
418
|
{
|
315
419
|
"name": "getuserSjoinedteams",
|
316
420
|
"protocol": "REST",
|
@@ -21,10 +21,15 @@
|
|
21
21
|
"gettabsinachannel",
|
22
22
|
"getitemsinateamdrive",
|
23
23
|
"getmessagesWithoutrepliesInachannelBeta",
|
24
|
+
"getMessagesWithoutRepliesInChannel",
|
24
25
|
"createaplaintextchatthreadBeta",
|
26
|
+
"sendChannelMessage",
|
25
27
|
"getamessageinachannelBeta",
|
28
|
+
"getSingleMessageInChannel",
|
26
29
|
"getrepliestoamessageinachannelBeta",
|
30
|
+
"getRepliesToMessageInChannel",
|
27
31
|
"getareplyofamessageBeta",
|
32
|
+
"getSingleMessageReplyInChannel",
|
28
33
|
"getuserSjoinedteams",
|
29
34
|
"getprimarychannel",
|
30
35
|
"getteamchannels",
|
package/metadata.json
CHANGED
@@ -74,7 +74,9 @@
|
|
74
74
|
"link": "https://learn.microsoft.com/en-us/graph/api/overview?view=graph-rest-1.0",
|
75
75
|
"public": true
|
76
76
|
}
|
77
|
-
]
|
77
|
+
],
|
78
|
+
"workshopLinks": [],
|
79
|
+
"workshopHomePage": "https://www.itential.com/get-started/"
|
78
80
|
},
|
79
81
|
"assets": [],
|
80
82
|
"relatedItems": {
|
@@ -85,5 +87,6 @@
|
|
85
87
|
"transformationProjects": [],
|
86
88
|
"exampleProjects": []
|
87
89
|
},
|
88
|
-
"supportLevel": "community"
|
90
|
+
"supportLevel": "community",
|
91
|
+
"techAlliance": false
|
89
92
|
}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@itentialopensource/adapter-microsoft_graph",
|
3
|
-
"version": "1.4.
|
3
|
+
"version": "1.4.3",
|
4
4
|
"description": "This adapter integrates with system described as: microsoftGraph.",
|
5
5
|
"main": "adapter.js",
|
6
6
|
"wizardVersion": "2.44.7",
|
@@ -56,12 +56,12 @@
|
|
56
56
|
"@itentialopensource/adapter-utils": "^5.6.0",
|
57
57
|
"acorn": "^8.12.1",
|
58
58
|
"ajv": "^8.17.1",
|
59
|
-
"axios": "^1.7.
|
59
|
+
"axios": "^1.7.4",
|
60
60
|
"commander": "^11.0.0",
|
61
61
|
"dns-lookup-promise": "^1.0.4",
|
62
62
|
"fs-extra": "^11.2.0",
|
63
63
|
"json-query": "^2.2.2",
|
64
|
-
"mocha": "^10.7.
|
64
|
+
"mocha": "^10.7.3",
|
65
65
|
"mocha-param": "^2.0.1",
|
66
66
|
"mongodb": "^4.16.0",
|
67
67
|
"ping": "^0.4.4",
|
package/pronghorn.json
CHANGED
@@ -2853,6 +2853,50 @@
|
|
2853
2853
|
},
|
2854
2854
|
"task": true
|
2855
2855
|
},
|
2856
|
+
{
|
2857
|
+
"name": "getMessagesWithoutRepliesInChannel",
|
2858
|
+
"summary": "Get messages (without replies) in a channel",
|
2859
|
+
"description": "Get messages (without replies) in a channel",
|
2860
|
+
"input": [
|
2861
|
+
{
|
2862
|
+
"name": "teamId",
|
2863
|
+
"type": "string",
|
2864
|
+
"info": ": string",
|
2865
|
+
"required": true,
|
2866
|
+
"schema": {
|
2867
|
+
"title": "teamId",
|
2868
|
+
"type": "string"
|
2869
|
+
}
|
2870
|
+
},
|
2871
|
+
{
|
2872
|
+
"name": "channelId",
|
2873
|
+
"type": "string",
|
2874
|
+
"info": ": string",
|
2875
|
+
"required": true,
|
2876
|
+
"schema": {
|
2877
|
+
"title": "channelId",
|
2878
|
+
"type": "string"
|
2879
|
+
}
|
2880
|
+
}
|
2881
|
+
],
|
2882
|
+
"output": {
|
2883
|
+
"name": "result",
|
2884
|
+
"type": "object",
|
2885
|
+
"description": "A JSON Object containing status, code and the result",
|
2886
|
+
"schema": {
|
2887
|
+
"title": "result",
|
2888
|
+
"type": "object"
|
2889
|
+
}
|
2890
|
+
},
|
2891
|
+
"roles": [
|
2892
|
+
"admin"
|
2893
|
+
],
|
2894
|
+
"route": {
|
2895
|
+
"verb": "POST",
|
2896
|
+
"path": "/getMessagesWithoutRepliesInChannel"
|
2897
|
+
},
|
2898
|
+
"task": true
|
2899
|
+
},
|
2856
2900
|
{
|
2857
2901
|
"name": "createaplaintextchatthreadBeta",
|
2858
2902
|
"summary": "Create a plain text chat thread (beta)",
|
@@ -2918,6 +2962,71 @@
|
|
2918
2962
|
},
|
2919
2963
|
"task": true
|
2920
2964
|
},
|
2965
|
+
{
|
2966
|
+
"name": "sendChannelMessage",
|
2967
|
+
"summary": "Send a new chat message in the specified channel or a chat",
|
2968
|
+
"description": "Send a new chat message in the specified channel or a chat",
|
2969
|
+
"input": [
|
2970
|
+
{
|
2971
|
+
"name": "teamId",
|
2972
|
+
"type": "string",
|
2973
|
+
"info": ": string",
|
2974
|
+
"required": true,
|
2975
|
+
"schema": {
|
2976
|
+
"title": "teamId",
|
2977
|
+
"type": "string"
|
2978
|
+
}
|
2979
|
+
},
|
2980
|
+
{
|
2981
|
+
"name": "channelId",
|
2982
|
+
"type": "string",
|
2983
|
+
"info": ": string",
|
2984
|
+
"required": true,
|
2985
|
+
"schema": {
|
2986
|
+
"title": "channelId",
|
2987
|
+
"type": "string"
|
2988
|
+
}
|
2989
|
+
},
|
2990
|
+
{
|
2991
|
+
"name": "body",
|
2992
|
+
"type": "object",
|
2993
|
+
"info": ": object",
|
2994
|
+
"required": true,
|
2995
|
+
"schema": {
|
2996
|
+
"allOf": [
|
2997
|
+
{
|
2998
|
+
"type": "object"
|
2999
|
+
},
|
3000
|
+
{
|
3001
|
+
"example": {
|
3002
|
+
"body": {
|
3003
|
+
"content": "Hello World!"
|
3004
|
+
}
|
3005
|
+
}
|
3006
|
+
}
|
3007
|
+
],
|
3008
|
+
"definitions": {}
|
3009
|
+
}
|
3010
|
+
}
|
3011
|
+
],
|
3012
|
+
"output": {
|
3013
|
+
"name": "result",
|
3014
|
+
"type": "object",
|
3015
|
+
"description": "A JSON Object containing status, code and the result",
|
3016
|
+
"schema": {
|
3017
|
+
"title": "result",
|
3018
|
+
"type": "object"
|
3019
|
+
}
|
3020
|
+
},
|
3021
|
+
"roles": [
|
3022
|
+
"admin"
|
3023
|
+
],
|
3024
|
+
"route": {
|
3025
|
+
"verb": "POST",
|
3026
|
+
"path": "/sendChannelMessage"
|
3027
|
+
},
|
3028
|
+
"task": true
|
3029
|
+
},
|
2921
3030
|
{
|
2922
3031
|
"name": "getamessageinachannelBeta",
|
2923
3032
|
"summary": "Get a message in a channel (beta)",
|
@@ -2972,6 +3081,60 @@
|
|
2972
3081
|
},
|
2973
3082
|
"task": true
|
2974
3083
|
},
|
3084
|
+
{
|
3085
|
+
"name": "getSingleMessageInChannel",
|
3086
|
+
"summary": "Get a message in a channel",
|
3087
|
+
"description": "Get a message in a channel",
|
3088
|
+
"input": [
|
3089
|
+
{
|
3090
|
+
"name": "teamId",
|
3091
|
+
"type": "string",
|
3092
|
+
"info": ": string",
|
3093
|
+
"required": true,
|
3094
|
+
"schema": {
|
3095
|
+
"title": "teamId",
|
3096
|
+
"type": "string"
|
3097
|
+
}
|
3098
|
+
},
|
3099
|
+
{
|
3100
|
+
"name": "channelId",
|
3101
|
+
"type": "string",
|
3102
|
+
"info": ": string",
|
3103
|
+
"required": true,
|
3104
|
+
"schema": {
|
3105
|
+
"title": "channelId",
|
3106
|
+
"type": "string"
|
3107
|
+
}
|
3108
|
+
},
|
3109
|
+
{
|
3110
|
+
"name": "messageId",
|
3111
|
+
"type": "string",
|
3112
|
+
"info": ": string",
|
3113
|
+
"required": true,
|
3114
|
+
"schema": {
|
3115
|
+
"title": "messageId",
|
3116
|
+
"type": "string"
|
3117
|
+
}
|
3118
|
+
}
|
3119
|
+
],
|
3120
|
+
"output": {
|
3121
|
+
"name": "result",
|
3122
|
+
"type": "object",
|
3123
|
+
"description": "A JSON Object containing status, code and the result",
|
3124
|
+
"schema": {
|
3125
|
+
"title": "result",
|
3126
|
+
"type": "object"
|
3127
|
+
}
|
3128
|
+
},
|
3129
|
+
"roles": [
|
3130
|
+
"admin"
|
3131
|
+
],
|
3132
|
+
"route": {
|
3133
|
+
"verb": "POST",
|
3134
|
+
"path": "/getSingleMessageInChannel"
|
3135
|
+
},
|
3136
|
+
"task": true
|
3137
|
+
},
|
2975
3138
|
{
|
2976
3139
|
"name": "getrepliestoamessageinachannelBeta",
|
2977
3140
|
"summary": "Get replies to a message in a channel (beta)",
|
@@ -3026,6 +3189,60 @@
|
|
3026
3189
|
},
|
3027
3190
|
"task": true
|
3028
3191
|
},
|
3192
|
+
{
|
3193
|
+
"name": "getRepliesToMessageInChannel",
|
3194
|
+
"summary": "Get replies to a message in a channel",
|
3195
|
+
"description": "Get replies to a message in a channel",
|
3196
|
+
"input": [
|
3197
|
+
{
|
3198
|
+
"name": "teamId",
|
3199
|
+
"type": "string",
|
3200
|
+
"info": ": string",
|
3201
|
+
"required": true,
|
3202
|
+
"schema": {
|
3203
|
+
"title": "teamId",
|
3204
|
+
"type": "string"
|
3205
|
+
}
|
3206
|
+
},
|
3207
|
+
{
|
3208
|
+
"name": "channelId",
|
3209
|
+
"type": "string",
|
3210
|
+
"info": ": string",
|
3211
|
+
"required": true,
|
3212
|
+
"schema": {
|
3213
|
+
"title": "channelId",
|
3214
|
+
"type": "string"
|
3215
|
+
}
|
3216
|
+
},
|
3217
|
+
{
|
3218
|
+
"name": "messageId",
|
3219
|
+
"type": "string",
|
3220
|
+
"info": ": string",
|
3221
|
+
"required": true,
|
3222
|
+
"schema": {
|
3223
|
+
"title": "messageId",
|
3224
|
+
"type": "string"
|
3225
|
+
}
|
3226
|
+
}
|
3227
|
+
],
|
3228
|
+
"output": {
|
3229
|
+
"name": "result",
|
3230
|
+
"type": "object",
|
3231
|
+
"description": "A JSON Object containing status, code and the result",
|
3232
|
+
"schema": {
|
3233
|
+
"title": "result",
|
3234
|
+
"type": "object"
|
3235
|
+
}
|
3236
|
+
},
|
3237
|
+
"roles": [
|
3238
|
+
"admin"
|
3239
|
+
],
|
3240
|
+
"route": {
|
3241
|
+
"verb": "POST",
|
3242
|
+
"path": "/getRepliesToMessageInChannel"
|
3243
|
+
},
|
3244
|
+
"task": true
|
3245
|
+
},
|
3029
3246
|
{
|
3030
3247
|
"name": "getareplyofamessageBeta",
|
3031
3248
|
"summary": "Get a reply of a message (beta)",
|
@@ -3090,6 +3307,70 @@
|
|
3090
3307
|
},
|
3091
3308
|
"task": true
|
3092
3309
|
},
|
3310
|
+
{
|
3311
|
+
"name": "getSingleMessageReplyInChannel",
|
3312
|
+
"summary": "Get a reply of a message",
|
3313
|
+
"description": "Get a reply of a message",
|
3314
|
+
"input": [
|
3315
|
+
{
|
3316
|
+
"name": "teamId",
|
3317
|
+
"type": "string",
|
3318
|
+
"info": ": string",
|
3319
|
+
"required": true,
|
3320
|
+
"schema": {
|
3321
|
+
"title": "teamId",
|
3322
|
+
"type": "string"
|
3323
|
+
}
|
3324
|
+
},
|
3325
|
+
{
|
3326
|
+
"name": "channelId",
|
3327
|
+
"type": "string",
|
3328
|
+
"info": ": string",
|
3329
|
+
"required": true,
|
3330
|
+
"schema": {
|
3331
|
+
"title": "channelId",
|
3332
|
+
"type": "string"
|
3333
|
+
}
|
3334
|
+
},
|
3335
|
+
{
|
3336
|
+
"name": "messageId",
|
3337
|
+
"type": "string",
|
3338
|
+
"info": ": string",
|
3339
|
+
"required": true,
|
3340
|
+
"schema": {
|
3341
|
+
"title": "messageId",
|
3342
|
+
"type": "string"
|
3343
|
+
}
|
3344
|
+
},
|
3345
|
+
{
|
3346
|
+
"name": "replyId",
|
3347
|
+
"type": "string",
|
3348
|
+
"info": ": string",
|
3349
|
+
"required": true,
|
3350
|
+
"schema": {
|
3351
|
+
"title": "replyId",
|
3352
|
+
"type": "string"
|
3353
|
+
}
|
3354
|
+
}
|
3355
|
+
],
|
3356
|
+
"output": {
|
3357
|
+
"name": "result",
|
3358
|
+
"type": "object",
|
3359
|
+
"description": "A JSON Object containing status, code and the result",
|
3360
|
+
"schema": {
|
3361
|
+
"title": "result",
|
3362
|
+
"type": "object"
|
3363
|
+
}
|
3364
|
+
},
|
3365
|
+
"roles": [
|
3366
|
+
"admin"
|
3367
|
+
],
|
3368
|
+
"route": {
|
3369
|
+
"verb": "POST",
|
3370
|
+
"path": "/getSingleMessageReplyInChannel"
|
3371
|
+
},
|
3372
|
+
"task": true
|
3373
|
+
},
|
3093
3374
|
{
|
3094
3375
|
"name": "getuserSjoinedteams",
|
3095
3376
|
"summary": "Get user's joined teams",
|
Binary file
|
package/report/adapterInfo.json
CHANGED
@@ -1,10 +1,10 @@
|
|
1
1
|
{
|
2
|
-
"version": "1.
|
3
|
-
"configLines":
|
2
|
+
"version": "1.4.1",
|
3
|
+
"configLines": 11197,
|
4
4
|
"scriptLines": 1783,
|
5
|
-
"codeLines":
|
6
|
-
"testLines":
|
7
|
-
"testCases":
|
8
|
-
"totalCodeLines":
|
9
|
-
"wfTasks":
|
5
|
+
"codeLines": 20708,
|
6
|
+
"testLines": 15569,
|
7
|
+
"testCases": 797,
|
8
|
+
"totalCodeLines": 38060,
|
9
|
+
"wfTasks": 233
|
10
10
|
}
|