/
support_app.jl
452 lines (416 loc) · 16.9 KB
/
support_app.jl
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# This file is auto-generated by AWSMetadata.jl
using AWS
using AWS.AWSServices: support_app
using AWS.Compat
using AWS.UUIDs
"""
create_slack_channel_configuration(channel_id, channel_role_arn, notify_on_case_severity, team_id)
create_slack_channel_configuration(channel_id, channel_role_arn, notify_on_case_severity, team_id, params::Dict{String,<:Any})
Creates a Slack channel configuration for your Amazon Web Services account. You can add
up to 5 Slack workspaces for your account. You can add up to 20 Slack channels for your
account. A Slack channel can have up to 100 Amazon Web Services accounts. This means
that only 100 accounts can add the same Slack channel to the Amazon Web Services Support
App. We recommend that you only add the accounts that you need to manage support cases for
your organization. This can reduce the notifications about case updates that you receive in
the Slack channel. We recommend that you choose a private Slack channel so that only
members in that channel have read and write access to your support cases. Anyone in your
Slack channel can create, update, or resolve support cases for your account. Users require
an invitation to join private channels.
# Arguments
- `channel_id`: The channel ID in Slack. This ID identifies a channel within a Slack
workspace.
- `channel_role_arn`: The Amazon Resource Name (ARN) of an IAM role that you want to use to
perform operations on Amazon Web Services. For more information, see Managing access to the
Amazon Web Services Support App in the Amazon Web Services Support User Guide.
- `notify_on_case_severity`: The case severity for a support case that you want to receive
notifications. If you specify high or all, you must specify true for at least one of the
following parameters: notifyOnAddCorrespondenceToCase notifyOnCreateOrReopenCase
notifyOnResolveCase If you specify none, the following parameters must be null or false:
notifyOnAddCorrespondenceToCase notifyOnCreateOrReopenCase notifyOnResolveCase
If you don't specify these parameters in your request, they default to false.
- `team_id`: The team ID in Slack. This ID uniquely identifies a Slack workspace, such as
T012ABCDEFG.
# Optional Parameters
Optional parameters can be passed as a `params::Dict{String,<:Any}`. Valid keys are:
- `"channelName"`: The name of the Slack channel that you configure for the Amazon Web
Services Support App.
- `"notifyOnAddCorrespondenceToCase"`: Whether you want to get notified when a support case
has a new correspondence.
- `"notifyOnCreateOrReopenCase"`: Whether you want to get notified when a support case is
created or reopened.
- `"notifyOnResolveCase"`: Whether you want to get notified when a support case is resolved.
"""
function create_slack_channel_configuration(
channelId,
channelRoleArn,
notifyOnCaseSeverity,
teamId;
aws_config::AbstractAWSConfig=global_aws_config(),
)
return support_app(
"POST",
"/control/create-slack-channel-configuration",
Dict{String,Any}(
"channelId" => channelId,
"channelRoleArn" => channelRoleArn,
"notifyOnCaseSeverity" => notifyOnCaseSeverity,
"teamId" => teamId,
);
aws_config=aws_config,
feature_set=SERVICE_FEATURE_SET,
)
end
function create_slack_channel_configuration(
channelId,
channelRoleArn,
notifyOnCaseSeverity,
teamId,
params::AbstractDict{String};
aws_config::AbstractAWSConfig=global_aws_config(),
)
return support_app(
"POST",
"/control/create-slack-channel-configuration",
Dict{String,Any}(
mergewith(
_merge,
Dict{String,Any}(
"channelId" => channelId,
"channelRoleArn" => channelRoleArn,
"notifyOnCaseSeverity" => notifyOnCaseSeverity,
"teamId" => teamId,
),
params,
),
);
aws_config=aws_config,
feature_set=SERVICE_FEATURE_SET,
)
end
"""
delete_account_alias()
delete_account_alias(params::Dict{String,<:Any})
Deletes an alias for an Amazon Web Services account ID. The alias appears in the Amazon Web
Services Support App page of the Amazon Web Services Support Center. The alias also appears
in Slack messages from the Amazon Web Services Support App.
"""
function delete_account_alias(; aws_config::AbstractAWSConfig=global_aws_config())
return support_app(
"POST",
"/control/delete-account-alias";
aws_config=aws_config,
feature_set=SERVICE_FEATURE_SET,
)
end
function delete_account_alias(
params::AbstractDict{String}; aws_config::AbstractAWSConfig=global_aws_config()
)
return support_app(
"POST",
"/control/delete-account-alias",
params;
aws_config=aws_config,
feature_set=SERVICE_FEATURE_SET,
)
end
"""
delete_slack_channel_configuration(channel_id, team_id)
delete_slack_channel_configuration(channel_id, team_id, params::Dict{String,<:Any})
Deletes a Slack channel configuration from your Amazon Web Services account. This operation
doesn't delete your Slack channel.
# Arguments
- `channel_id`: The channel ID in Slack. This ID identifies a channel within a Slack
workspace.
- `team_id`: The team ID in Slack. This ID uniquely identifies a Slack workspace, such as
T012ABCDEFG.
"""
function delete_slack_channel_configuration(
channelId, teamId; aws_config::AbstractAWSConfig=global_aws_config()
)
return support_app(
"POST",
"/control/delete-slack-channel-configuration",
Dict{String,Any}("channelId" => channelId, "teamId" => teamId);
aws_config=aws_config,
feature_set=SERVICE_FEATURE_SET,
)
end
function delete_slack_channel_configuration(
channelId,
teamId,
params::AbstractDict{String};
aws_config::AbstractAWSConfig=global_aws_config(),
)
return support_app(
"POST",
"/control/delete-slack-channel-configuration",
Dict{String,Any}(
mergewith(
_merge,
Dict{String,Any}("channelId" => channelId, "teamId" => teamId),
params,
),
);
aws_config=aws_config,
feature_set=SERVICE_FEATURE_SET,
)
end
"""
delete_slack_workspace_configuration(team_id)
delete_slack_workspace_configuration(team_id, params::Dict{String,<:Any})
Deletes a Slack workspace configuration from your Amazon Web Services account. This
operation doesn't delete your Slack workspace.
# Arguments
- `team_id`: The team ID in Slack. This ID uniquely identifies a Slack workspace, such as
T012ABCDEFG.
"""
function delete_slack_workspace_configuration(
teamId; aws_config::AbstractAWSConfig=global_aws_config()
)
return support_app(
"POST",
"/control/delete-slack-workspace-configuration",
Dict{String,Any}("teamId" => teamId);
aws_config=aws_config,
feature_set=SERVICE_FEATURE_SET,
)
end
function delete_slack_workspace_configuration(
teamId, params::AbstractDict{String}; aws_config::AbstractAWSConfig=global_aws_config()
)
return support_app(
"POST",
"/control/delete-slack-workspace-configuration",
Dict{String,Any}(mergewith(_merge, Dict{String,Any}("teamId" => teamId), params));
aws_config=aws_config,
feature_set=SERVICE_FEATURE_SET,
)
end
"""
get_account_alias()
get_account_alias(params::Dict{String,<:Any})
Retrieves the alias from an Amazon Web Services account ID. The alias appears in the Amazon
Web Services Support App page of the Amazon Web Services Support Center. The alias also
appears in Slack messages from the Amazon Web Services Support App.
"""
function get_account_alias(; aws_config::AbstractAWSConfig=global_aws_config())
return support_app(
"POST",
"/control/get-account-alias";
aws_config=aws_config,
feature_set=SERVICE_FEATURE_SET,
)
end
function get_account_alias(
params::AbstractDict{String}; aws_config::AbstractAWSConfig=global_aws_config()
)
return support_app(
"POST",
"/control/get-account-alias",
params;
aws_config=aws_config,
feature_set=SERVICE_FEATURE_SET,
)
end
"""
list_slack_channel_configurations()
list_slack_channel_configurations(params::Dict{String,<:Any})
Lists the Slack channel configurations for an Amazon Web Services account.
# Optional Parameters
Optional parameters can be passed as a `params::Dict{String,<:Any}`. Valid keys are:
- `"nextToken"`: If the results of a search are large, the API only returns a portion of
the results and includes a nextToken pagination token in the response. To retrieve the next
batch of results, reissue the search request and include the returned token. When the API
returns the last set of results, the response doesn't include a pagination token value.
"""
function list_slack_channel_configurations(;
aws_config::AbstractAWSConfig=global_aws_config()
)
return support_app(
"POST",
"/control/list-slack-channel-configurations";
aws_config=aws_config,
feature_set=SERVICE_FEATURE_SET,
)
end
function list_slack_channel_configurations(
params::AbstractDict{String}; aws_config::AbstractAWSConfig=global_aws_config()
)
return support_app(
"POST",
"/control/list-slack-channel-configurations",
params;
aws_config=aws_config,
feature_set=SERVICE_FEATURE_SET,
)
end
"""
list_slack_workspace_configurations()
list_slack_workspace_configurations(params::Dict{String,<:Any})
Lists the Slack workspace configurations for an Amazon Web Services account.
# Optional Parameters
Optional parameters can be passed as a `params::Dict{String,<:Any}`. Valid keys are:
- `"nextToken"`: If the results of a search are large, the API only returns a portion of
the results and includes a nextToken pagination token in the response. To retrieve the next
batch of results, reissue the search request and include the returned token. When the API
returns the last set of results, the response doesn't include a pagination token value.
"""
function list_slack_workspace_configurations(;
aws_config::AbstractAWSConfig=global_aws_config()
)
return support_app(
"POST",
"/control/list-slack-workspace-configurations";
aws_config=aws_config,
feature_set=SERVICE_FEATURE_SET,
)
end
function list_slack_workspace_configurations(
params::AbstractDict{String}; aws_config::AbstractAWSConfig=global_aws_config()
)
return support_app(
"POST",
"/control/list-slack-workspace-configurations",
params;
aws_config=aws_config,
feature_set=SERVICE_FEATURE_SET,
)
end
"""
put_account_alias(account_alias)
put_account_alias(account_alias, params::Dict{String,<:Any})
Creates or updates an individual alias for each Amazon Web Services account ID. The alias
appears in the Amazon Web Services Support App page of the Amazon Web Services Support
Center. The alias also appears in Slack messages from the Amazon Web Services Support App.
# Arguments
- `account_alias`: An alias or short name for an Amazon Web Services account.
"""
function put_account_alias(accountAlias; aws_config::AbstractAWSConfig=global_aws_config())
return support_app(
"POST",
"/control/put-account-alias",
Dict{String,Any}("accountAlias" => accountAlias);
aws_config=aws_config,
feature_set=SERVICE_FEATURE_SET,
)
end
function put_account_alias(
accountAlias,
params::AbstractDict{String};
aws_config::AbstractAWSConfig=global_aws_config(),
)
return support_app(
"POST",
"/control/put-account-alias",
Dict{String,Any}(
mergewith(_merge, Dict{String,Any}("accountAlias" => accountAlias), params)
);
aws_config=aws_config,
feature_set=SERVICE_FEATURE_SET,
)
end
"""
register_slack_workspace_for_organization(team_id)
register_slack_workspace_for_organization(team_id, params::Dict{String,<:Any})
Registers a Slack workspace for your Amazon Web Services account. To call this API, your
account must be part of an organization in Organizations. If you're the management account
and you want to register Slack workspaces for your organization, you must complete the
following tasks: Sign in to the Amazon Web Services Support Center and authorize the
Slack workspaces where you want your organization to have access to. See Authorize a Slack
workspace in the Amazon Web Services Support User Guide. Call the
RegisterSlackWorkspaceForOrganization API to authorize each Slack workspace for the
organization. After the management account authorizes the Slack workspace, member
accounts can call this API to authorize the same Slack workspace for their individual
accounts. Member accounts don't need to authorize the Slack workspace manually through the
Amazon Web Services Support Center. To use the Amazon Web Services Support App, each
account must then complete the following tasks: Create an Identity and Access Management
(IAM) role with the required permission. For more information, see Managing access to the
Amazon Web Services Support App. Configure a Slack channel to use the Amazon Web Services
Support App for support cases for that account. For more information, see Configuring a
Slack channel.
# Arguments
- `team_id`: The team ID in Slack. This ID uniquely identifies a Slack workspace, such as
T012ABCDEFG. Specify the Slack workspace that you want to use for your organization.
"""
function register_slack_workspace_for_organization(
teamId; aws_config::AbstractAWSConfig=global_aws_config()
)
return support_app(
"POST",
"/control/register-slack-workspace-for-organization",
Dict{String,Any}("teamId" => teamId);
aws_config=aws_config,
feature_set=SERVICE_FEATURE_SET,
)
end
function register_slack_workspace_for_organization(
teamId, params::AbstractDict{String}; aws_config::AbstractAWSConfig=global_aws_config()
)
return support_app(
"POST",
"/control/register-slack-workspace-for-organization",
Dict{String,Any}(mergewith(_merge, Dict{String,Any}("teamId" => teamId), params));
aws_config=aws_config,
feature_set=SERVICE_FEATURE_SET,
)
end
"""
update_slack_channel_configuration(channel_id, team_id)
update_slack_channel_configuration(channel_id, team_id, params::Dict{String,<:Any})
Updates the configuration for a Slack channel, such as case update notifications.
# Arguments
- `channel_id`: The channel ID in Slack. This ID identifies a channel within a Slack
workspace.
- `team_id`: The team ID in Slack. This ID uniquely identifies a Slack workspace, such as
T012ABCDEFG.
# Optional Parameters
Optional parameters can be passed as a `params::Dict{String,<:Any}`. Valid keys are:
- `"channelName"`: The Slack channel name that you want to update.
- `"channelRoleArn"`: The Amazon Resource Name (ARN) of an IAM role that you want to use to
perform operations on Amazon Web Services. For more information, see Managing access to the
Amazon Web Services Support App in the Amazon Web Services Support User Guide.
- `"notifyOnAddCorrespondenceToCase"`: Whether you want to get notified when a support case
has a new correspondence.
- `"notifyOnCaseSeverity"`: The case severity for a support case that you want to receive
notifications. If you specify high or all, at least one of the following parameters must be
true: notifyOnAddCorrespondenceToCase notifyOnCreateOrReopenCase
notifyOnResolveCase If you specify none, any of the following parameters that you
specify in your request must be false: notifyOnAddCorrespondenceToCase
notifyOnCreateOrReopenCase notifyOnResolveCase If you don't specify these
parameters in your request, the Amazon Web Services Support App uses the current values by
default.
- `"notifyOnCreateOrReopenCase"`: Whether you want to get notified when a support case is
created or reopened.
- `"notifyOnResolveCase"`: Whether you want to get notified when a support case is resolved.
"""
function update_slack_channel_configuration(
channelId, teamId; aws_config::AbstractAWSConfig=global_aws_config()
)
return support_app(
"POST",
"/control/update-slack-channel-configuration",
Dict{String,Any}("channelId" => channelId, "teamId" => teamId);
aws_config=aws_config,
feature_set=SERVICE_FEATURE_SET,
)
end
function update_slack_channel_configuration(
channelId,
teamId,
params::AbstractDict{String};
aws_config::AbstractAWSConfig=global_aws_config(),
)
return support_app(
"POST",
"/control/update-slack-channel-configuration",
Dict{String,Any}(
mergewith(
_merge,
Dict{String,Any}("channelId" => channelId, "teamId" => teamId),
params,
),
);
aws_config=aws_config,
feature_set=SERVICE_FEATURE_SET,
)
end