1// Code generated by smithy-go-codegen DO NOT EDIT.
2
3package types
4
5import (
6	"time"
7)
8
9// A toggle for an individual feature at the instance level.
10type Attribute struct {
11
12	// The type of attribute.
13	AttributeType InstanceAttributeType
14
15	// The value of the attribute.
16	Value *string
17}
18
19// A chat message.
20type ChatMessage struct {
21
22	// The content of the chat message.
23	//
24	// This member is required.
25	Content *string
26
27	// The type of the content. Supported types are text/plain.
28	//
29	// This member is required.
30	ContentType *string
31}
32
33// Contains information about a contact flow.
34type ContactFlow struct {
35
36	// The Amazon Resource Name (ARN) of the contact flow.
37	Arn *string
38
39	// The content of the contact flow.
40	Content *string
41
42	// The description of the contact flow.
43	Description *string
44
45	// The identifier of the contact flow.
46	Id *string
47
48	// The name of the contact flow.
49	Name *string
50
51	// One or more tags.
52	Tags map[string]string
53
54	// The type of the contact flow. For descriptions of the available types, see
55	// Choose a Contact Flow Type
56	// (https://docs.aws.amazon.com/connect/latest/adminguide/create-contact-flow.html#contact-flow-types)
57	// in the Amazon Connect Administrator Guide.
58	Type ContactFlowType
59}
60
61// Contains summary information about a contact flow. You can also create and
62// update contact flows using the Amazon Connect Flow language
63// (https://docs.aws.amazon.com/connect/latest/adminguide/flow-language.html).
64type ContactFlowSummary struct {
65
66	// The Amazon Resource Name (ARN) of the contact flow.
67	Arn *string
68
69	// The type of contact flow.
70	ContactFlowType ContactFlowType
71
72	// The identifier of the contact flow.
73	Id *string
74
75	// The name of the contact flow.
76	Name *string
77}
78
79// Contains credentials to use for federation.
80type Credentials struct {
81
82	// An access token generated for a federated user to access Amazon Connect.
83	AccessToken *string
84
85	// A token generated with an expiration time for the session a user is logged in to
86	// Amazon Connect.
87	AccessTokenExpiration *time.Time
88
89	// Renews a token generated for a user to access the Amazon Connect instance.
90	RefreshToken *string
91
92	// Renews the expiration timer for a generated token.
93	RefreshTokenExpiration *time.Time
94}
95
96// Contains information about a real-time metric. For a description of each metric,
97// see Real-time Metrics Definitions
98// (https://docs.aws.amazon.com/connect/latest/adminguide/real-time-metrics-definitions.html)
99// in the Amazon Connect Administrator Guide.
100type CurrentMetric struct {
101
102	// The name of the metric.
103	Name CurrentMetricName
104
105	// The unit for the metric.
106	Unit Unit
107}
108
109// Contains the data for a real-time metric.
110type CurrentMetricData struct {
111
112	// Information about the metric.
113	Metric *CurrentMetric
114
115	// The value of the metric.
116	Value *float64
117}
118
119// Contains information about a set of real-time metrics.
120type CurrentMetricResult struct {
121
122	// The set of metrics.
123	Collections []CurrentMetricData
124
125	// The dimensions for the metrics.
126	Dimensions *Dimensions
127}
128
129// Contains information about the dimensions for a set of metrics.
130type Dimensions struct {
131
132	// The channel used for grouping and filters.
133	Channel Channel
134
135	// Information about the queue for which metrics are returned.
136	Queue *QueueReference
137}
138
139// The encryption configuration.
140type EncryptionConfig struct {
141
142	// The type of encryption.
143	//
144	// This member is required.
145	EncryptionType EncryptionType
146
147	// The identifier of the encryption key.
148	//
149	// This member is required.
150	KeyId *string
151}
152
153// Contains the filter to apply when retrieving metrics.
154type Filters struct {
155
156	// The channel to use to filter the metrics.
157	Channels []Channel
158
159	// The queues to use to filter the metrics. You can specify up to 100 queues per
160	// request.
161	Queues []string
162}
163
164// Contains information about a hierarchy group.
165type HierarchyGroup struct {
166
167	// The Amazon Resource Name (ARN) of the hierarchy group.
168	Arn *string
169
170	// Information about the levels in the hierarchy group.
171	HierarchyPath *HierarchyPath
172
173	// The identifier of the hierarchy group.
174	Id *string
175
176	// The identifier of the level in the hierarchy group.
177	LevelId *string
178
179	// The name of the hierarchy group.
180	Name *string
181}
182
183// Contains summary information about a hierarchy group.
184type HierarchyGroupSummary struct {
185
186	// The Amazon Resource Name (ARN) of the hierarchy group.
187	Arn *string
188
189	// The identifier of the hierarchy group.
190	Id *string
191
192	// The name of the hierarchy group.
193	Name *string
194}
195
196// Contains information about a hierarchy level.
197type HierarchyLevel struct {
198
199	// The Amazon Resource Name (ARN) of the hierarchy level.
200	Arn *string
201
202	// The identifier of the hierarchy level.
203	Id *string
204
205	// The name of the hierarchy level.
206	Name *string
207}
208
209// Contains information about the hierarchy level to update.
210type HierarchyLevelUpdate struct {
211
212	// The name of the user hierarchy level. Must not be more than 50 characters.
213	//
214	// This member is required.
215	Name *string
216}
217
218// Contains information about the levels of a hierarchy group.
219type HierarchyPath struct {
220
221	// Information about level five.
222	LevelFive *HierarchyGroupSummary
223
224	// Information about level four.
225	LevelFour *HierarchyGroupSummary
226
227	// Information about level one.
228	LevelOne *HierarchyGroupSummary
229
230	// Information about level three.
231	LevelThree *HierarchyGroupSummary
232
233	// Information about level two.
234	LevelTwo *HierarchyGroupSummary
235}
236
237// Contains information about a hierarchy structure.
238type HierarchyStructure struct {
239
240	// Information about level five.
241	LevelFive *HierarchyLevel
242
243	// Information about level four.
244	LevelFour *HierarchyLevel
245
246	// Information about level one.
247	LevelOne *HierarchyLevel
248
249	// Information about level three.
250	LevelThree *HierarchyLevel
251
252	// Information about level two.
253	LevelTwo *HierarchyLevel
254}
255
256// Contains information about the level hierarchy to update.
257type HierarchyStructureUpdate struct {
258
259	// The update for level five.
260	LevelFive *HierarchyLevelUpdate
261
262	// The update for level four.
263	LevelFour *HierarchyLevelUpdate
264
265	// The update for level one.
266	LevelOne *HierarchyLevelUpdate
267
268	// The update for level three.
269	LevelThree *HierarchyLevelUpdate
270
271	// The update for level two.
272	LevelTwo *HierarchyLevelUpdate
273}
274
275// Contains information about a historical metric. For a description of each
276// metric, see Historical Metrics Definitions
277// (https://docs.aws.amazon.com/connect/latest/adminguide/historical-metrics-definitions.html)
278// in the Amazon Connect Administrator Guide.
279type HistoricalMetric struct {
280
281	// The name of the metric.
282	Name HistoricalMetricName
283
284	// The statistic for the metric.
285	Statistic Statistic
286
287	// The threshold for the metric, used with service level metrics.
288	Threshold *Threshold
289
290	// The unit for the metric.
291	Unit Unit
292}
293
294// Contains the data for a historical metric.
295type HistoricalMetricData struct {
296
297	// Information about the metric.
298	Metric *HistoricalMetric
299
300	// The value of the metric.
301	Value *float64
302}
303
304// Contains information about the historical metrics retrieved.
305type HistoricalMetricResult struct {
306
307	// The set of metrics.
308	Collections []HistoricalMetricData
309
310	// The dimension for the metrics.
311	Dimensions *Dimensions
312}
313
314// Contains summary information about hours of operation for a contact center.
315type HoursOfOperationSummary struct {
316
317	// The Amazon Resource Name (ARN) of the hours of operation.
318	Arn *string
319
320	// The identifier of the hours of operation.
321	Id *string
322
323	// The name of the hours of operation.
324	Name *string
325}
326
327// The Amazon Connect instance.
328type Instance struct {
329
330	// The Amazon Resource Name (ARN) of the instance.
331	Arn *string
332
333	// When the instance was created.
334	CreatedTime *time.Time
335
336	// The identifier of the Amazon Connect instance.
337	Id *string
338
339	// The identity management type.
340	IdentityManagementType DirectoryType
341
342	// Whether inbound calls are enabled.
343	InboundCallsEnabled *bool
344
345	// The alias of instance.
346	InstanceAlias *string
347
348	// The state of the instance.
349	InstanceStatus InstanceStatus
350
351	// Whether outbound calls are enabled.
352	OutboundCallsEnabled *bool
353
354	// The service role of the instance.
355	ServiceRole *string
356
357	// Relevant details why the instance was not successfully created.
358	StatusReason *InstanceStatusReason
359}
360
361// Relevant details why the instance was not successfully created.
362type InstanceStatusReason struct {
363
364	// The message.
365	Message *string
366}
367
368// The storage configuration for the instance.
369type InstanceStorageConfig struct {
370
371	// A valid storage type.
372	//
373	// This member is required.
374	StorageType StorageType
375
376	// The existing association identifier that uniquely identifies the resource type
377	// and storage config for the given instance ID.
378	AssociationId *string
379
380	// The configuration of the Kinesis Firehose delivery stream.
381	KinesisFirehoseConfig *KinesisFirehoseConfig
382
383	// The configuration of the Kinesis data stream.
384	KinesisStreamConfig *KinesisStreamConfig
385
386	// The configuration of the Kinesis video stream.
387	KinesisVideoStreamConfig *KinesisVideoStreamConfig
388
389	// The S3 configuration.
390	S3Config *S3Config
391}
392
393// Information about the instance.
394type InstanceSummary struct {
395
396	// The Amazon Resource Name (ARN) of the instance.
397	Arn *string
398
399	// When the instance was created.
400	CreatedTime *time.Time
401
402	// The identifier of the instance.
403	Id *string
404
405	// The identity management type of the instance.
406	IdentityManagementType DirectoryType
407
408	// Whether inbound calls are enabled.
409	InboundCallsEnabled *bool
410
411	// The alias of the instance.
412	InstanceAlias *string
413
414	// The state of the instance.
415	InstanceStatus InstanceStatus
416
417	// Whether outbound calls are enabled.
418	OutboundCallsEnabled *bool
419
420	// The service role of the instance.
421	ServiceRole *string
422}
423
424// Contains summary information about the associated AppIntegrations.
425type IntegrationAssociationSummary struct {
426
427	// The identifier of the Amazon Connect instance.
428	InstanceId *string
429
430	// The Amazon Resource Name (ARN) for the AppIntegration.
431	IntegrationArn *string
432
433	// The Amazon Resource Name (ARN) for the AppIntegration association.
434	IntegrationAssociationArn *string
435
436	// The identifier for the AppIntegration association.
437	IntegrationAssociationId *string
438
439	// The integration type.
440	IntegrationType IntegrationType
441
442	// The user-provided, friendly name for the external application.
443	SourceApplicationName *string
444
445	// The URL for the external application.
446	SourceApplicationUrl *string
447
448	// The name of the source.
449	SourceType SourceType
450}
451
452// Configuration information of a Kinesis Firehose delivery stream.
453type KinesisFirehoseConfig struct {
454
455	// The Amazon Resource Name (ARN) of the delivery stream.
456	//
457	// This member is required.
458	FirehoseArn *string
459}
460
461// Configuration information of a Kinesis data stream.
462type KinesisStreamConfig struct {
463
464	// The Amazon Resource Name (ARN) of the data stream.
465	//
466	// This member is required.
467	StreamArn *string
468}
469
470// Configuration information of a Kinesis video stream.
471type KinesisVideoStreamConfig struct {
472
473	// The encryption configuration.
474	//
475	// This member is required.
476	EncryptionConfig *EncryptionConfig
477
478	// The prefix of the video stream.
479	//
480	// This member is required.
481	Prefix *string
482
483	// The number of hours data is retained in the stream. Kinesis Video Streams
484	// retains the data in a data store that is associated with the stream. The default
485	// value is 0, indicating that the stream does not persist data.
486	//
487	// This member is required.
488	RetentionPeriodHours int32
489}
490
491// Configuration information of an Amazon Lex bot.
492type LexBot struct {
493
494	// The Region the Amazon Lex bot was created in.
495	LexRegion *string
496
497	// The name of the Amazon Lex bot.
498	Name *string
499}
500
501// Contains information about which channels are supported, and how many contacts
502// an agent can have on a channel simultaneously.
503type MediaConcurrency struct {
504
505	// The channels that agents can handle in the Contact Control Panel (CCP).
506	//
507	// This member is required.
508	Channel Channel
509
510	// The number of contacts an agent can have on a channel simultaneously.
511	//
512	// This member is required.
513	Concurrency int32
514}
515
516// The customer's details.
517type ParticipantDetails struct {
518
519	// Display name of the participant.
520	//
521	// This member is required.
522	DisplayName *string
523}
524
525// Contains information about a phone number for a quick connect.
526type PhoneNumberQuickConnectConfig struct {
527
528	// The phone number in E.164 format.
529	//
530	// This member is required.
531	PhoneNumber *string
532}
533
534// Contains summary information about a phone number for a contact center.
535type PhoneNumberSummary struct {
536
537	// The Amazon Resource Name (ARN) of the phone number.
538	Arn *string
539
540	// The identifier of the phone number.
541	Id *string
542
543	// The phone number.
544	PhoneNumber *string
545
546	// The ISO country code.
547	PhoneNumberCountryCode PhoneNumberCountryCode
548
549	// The type of phone number.
550	PhoneNumberType PhoneNumberType
551}
552
553// Information about a problem detail.
554type ProblemDetail struct {
555
556	// The problem detail's message.
557	Message *string
558}
559
560// Contains information about the prompt.
561type PromptSummary struct {
562
563	// The Amazon Resource Name (ARN) of the prompt.
564	Arn *string
565
566	// The identifier of the prompt.
567	Id *string
568
569	// The name of the prompt.
570	Name *string
571}
572
573// Contains information about a queue for a quick connect. The contact flow must be
574// of type Transfer to Queue.
575type QueueQuickConnectConfig struct {
576
577	// The identifier of the contact flow.
578	//
579	// This member is required.
580	ContactFlowId *string
581
582	// The identifier of the queue.
583	//
584	// This member is required.
585	QueueId *string
586}
587
588// Contains information about a queue resource for which metrics are returned.
589type QueueReference struct {
590
591	// The Amazon Resource Name (ARN) of the queue.
592	Arn *string
593
594	// The identifier of the queue.
595	Id *string
596}
597
598// Contains summary information about a queue.
599type QueueSummary struct {
600
601	// The Amazon Resource Name (ARN) of the queue.
602	Arn *string
603
604	// The identifier of the queue.
605	Id *string
606
607	// The name of the queue.
608	Name *string
609
610	// The type of queue.
611	QueueType QueueType
612}
613
614// Contains information about a quick connect.
615type QuickConnect struct {
616
617	// The description.
618	Description *string
619
620	// The name of the quick connect.
621	Name *string
622
623	// The Amazon Resource Name (ARN) of the quick connect.
624	QuickConnectARN *string
625
626	// Contains information about the quick connect.
627	QuickConnectConfig *QuickConnectConfig
628
629	// The identifier for the quick connect.
630	QuickConnectId *string
631
632	// One or more tags.
633	Tags map[string]string
634}
635
636// Contains configuration settings for a quick connect.
637type QuickConnectConfig struct {
638
639	// The type of quick connect. In the Amazon Connect console, when you create a
640	// quick connect, you are prompted to assign one of the following types: Agent
641	// (USER), External (PHONE_NUMBER), or Queue (QUEUE).
642	//
643	// This member is required.
644	QuickConnectType QuickConnectType
645
646	// The phone configuration. This is required only if QuickConnectType is
647	// PHONE_NUMBER.
648	PhoneConfig *PhoneNumberQuickConnectConfig
649
650	// The queue configuration. This is required only if QuickConnectType is QUEUE.
651	QueueConfig *QueueQuickConnectConfig
652
653	// The user configuration. This is required only if QuickConnectType is USER.
654	UserConfig *UserQuickConnectConfig
655}
656
657// Contains summary information about a quick connect.
658type QuickConnectSummary struct {
659
660	// The Amazon Resource Name (ARN).
661	Arn *string
662
663	// The identifier for the quick connect.
664	Id *string
665
666	// The name.
667	Name *string
668
669	// The type of quick connect. In the Amazon Connect console, when you create a
670	// quick connect, you are prompted to assign one of the following types: Agent
671	// (USER), External (PHONE_NUMBER), or Queue (QUEUE).
672	QuickConnectType QuickConnectType
673}
674
675// A link that an agent selects to complete a given task. You can have up to 4,096
676// UTF-8 bytes across all references for a contact.
677type Reference struct {
678
679	// A valid URL.
680	//
681	// This member is required.
682	Type ReferenceType
683
684	// A formatted URL that will be shown to an agent in the Contact Control Panel
685	// (CCP)
686	//
687	// This member is required.
688	Value *string
689}
690
691// Contains information about a routing profile.
692type RoutingProfile struct {
693
694	// The identifier of the default outbound queue for this routing profile.
695	DefaultOutboundQueueId *string
696
697	// The description of the routing profile.
698	Description *string
699
700	// The identifier of the Amazon Connect instance.
701	InstanceId *string
702
703	// The channels agents can handle in the Contact Control Panel (CCP) for this
704	// routing profile.
705	MediaConcurrencies []MediaConcurrency
706
707	// The name of the routing profile.
708	Name *string
709
710	// The Amazon Resource Name (ARN) of the routing profile.
711	RoutingProfileArn *string
712
713	// The identifier of the routing profile.
714	RoutingProfileId *string
715
716	// One or more tags.
717	Tags map[string]string
718}
719
720// Contains information about the queue and channel for which priority and delay
721// can be set.
722type RoutingProfileQueueConfig struct {
723
724	// The delay, in seconds, a contact should be in the queue before they are routed
725	// to an available agent. For more information, see Queues: priority and delay
726	// (https://docs.aws.amazon.com/connect/latest/adminguide/concepts-routing-profiles-priority.html)
727	// in the Amazon Connect Administrator Guide.
728	//
729	// This member is required.
730	Delay int32
731
732	// The order in which contacts are to be handled for the queue. For more
733	// information, see Queues: priority and delay
734	// (https://docs.aws.amazon.com/connect/latest/adminguide/concepts-routing-profiles-priority.html).
735	//
736	// This member is required.
737	Priority int32
738
739	// Contains information about a queue resource.
740	//
741	// This member is required.
742	QueueReference *RoutingProfileQueueReference
743}
744
745// Contains summary information about a routing profile queue.
746type RoutingProfileQueueConfigSummary struct {
747
748	// The channels this queue supports.
749	//
750	// This member is required.
751	Channel Channel
752
753	// The delay, in seconds, that a contact should be in the queue before they are
754	// routed to an available agent. For more information, see Queues: priority and
755	// delay
756	// (https://docs.aws.amazon.com/connect/latest/adminguide/concepts-routing-profiles-priority.html)
757	// in the Amazon Connect Administrator Guide.
758	//
759	// This member is required.
760	Delay int32
761
762	// The order in which contacts are to be handled for the queue. For more
763	// information, see Queues: priority and delay
764	// (https://docs.aws.amazon.com/connect/latest/adminguide/concepts-routing-profiles-priority.html).
765	//
766	// This member is required.
767	Priority int32
768
769	// The Amazon Resource Name (ARN) of the queue.
770	//
771	// This member is required.
772	QueueArn *string
773
774	// The identifier of the queue.
775	//
776	// This member is required.
777	QueueId *string
778
779	// The name of the queue.
780	//
781	// This member is required.
782	QueueName *string
783}
784
785// Contains the channel and queue identifier for a routing profile.
786type RoutingProfileQueueReference struct {
787
788	// The channels agents can handle in the Contact Control Panel (CCP) for this
789	// routing profile.
790	//
791	// This member is required.
792	Channel Channel
793
794	// The identifier of the queue.
795	//
796	// This member is required.
797	QueueId *string
798}
799
800// Contains summary information about a routing profile.
801type RoutingProfileSummary struct {
802
803	// The Amazon Resource Name (ARN) of the routing profile.
804	Arn *string
805
806	// The identifier of the routing profile.
807	Id *string
808
809	// The name of the routing profile.
810	Name *string
811}
812
813// Information about the S3 storage type.
814type S3Config struct {
815
816	// The S3 bucket name.
817	//
818	// This member is required.
819	BucketName *string
820
821	// The S3 bucket prefix.
822	//
823	// This member is required.
824	BucketPrefix *string
825
826	// The S3 encryption configuration.
827	EncryptionConfig *EncryptionConfig
828}
829
830// Configuration information of the security key.
831type SecurityKey struct {
832
833	// The existing association identifier that uniquely identifies the resource type
834	// and storage config for the given instance ID.
835	AssociationId *string
836
837	// When the security key was created.
838	CreationTime *time.Time
839
840	// The key of the security key.
841	Key *string
842}
843
844// Contains information about a security profile.
845type SecurityProfileSummary struct {
846
847	// The Amazon Resource Name (ARN) of the security profile.
848	Arn *string
849
850	// The identifier of the security profile.
851	Id *string
852
853	// The name of the security profile.
854	Name *string
855}
856
857// Contains information about the threshold for service level metrics.
858type Threshold struct {
859
860	// The type of comparison. Only "less than" (LT) comparisons are supported.
861	Comparison Comparison
862
863	// The threshold value to compare.
864	ThresholdValue *float64
865}
866
867// Contains the use case.
868type UseCase struct {
869
870	// The Amazon Resource Name (ARN) for the use case.
871	UseCaseArn *string
872
873	// The identifier for the use case.
874	UseCaseId *string
875
876	// The type of use case to associate to the AppIntegration association. Each
877	// AppIntegration association can have only one of each use case type.
878	UseCaseType UseCaseType
879}
880
881// Contains information about a user account for a Amazon Connect instance.
882type User struct {
883
884	// The Amazon Resource Name (ARN) of the user account.
885	Arn *string
886
887	// The identifier of the user account in the directory used for identity
888	// management.
889	DirectoryUserId *string
890
891	// The identifier of the hierarchy group for the user.
892	HierarchyGroupId *string
893
894	// The identifier of the user account.
895	Id *string
896
897	// Information about the user identity.
898	IdentityInfo *UserIdentityInfo
899
900	// Information about the phone configuration for the user.
901	PhoneConfig *UserPhoneConfig
902
903	// The identifier of the routing profile for the user.
904	RoutingProfileId *string
905
906	// The identifiers of the security profiles for the user.
907	SecurityProfileIds []string
908
909	// The tags.
910	Tags map[string]string
911
912	// The user name assigned to the user account.
913	Username *string
914}
915
916// Contains information about the identity of a user.
917type UserIdentityInfo struct {
918
919	// The email address. If you are using SAML for identity management and include
920	// this parameter, an error is returned.
921	Email *string
922
923	// The first name. This is required if you are using Amazon Connect or SAML for
924	// identity management.
925	FirstName *string
926
927	// The last name. This is required if you are using Amazon Connect or SAML for
928	// identity management.
929	LastName *string
930}
931
932// Contains information about the phone configuration settings for a user.
933type UserPhoneConfig struct {
934
935	// The phone type.
936	//
937	// This member is required.
938	PhoneType PhoneType
939
940	// The After Call Work (ACW) timeout setting, in seconds.
941	AfterContactWorkTimeLimit int32
942
943	// The Auto accept setting.
944	AutoAccept bool
945
946	// The phone number for the user's desk phone.
947	DeskPhoneNumber *string
948}
949
950// Contains information about the quick connect configuration settings for a user.
951// The contact flow must be of type Transfer to Agent.
952type UserQuickConnectConfig struct {
953
954	// The identifier of the contact flow.
955	//
956	// This member is required.
957	ContactFlowId *string
958
959	// The identifier of the user.
960	//
961	// This member is required.
962	UserId *string
963}
964
965// Contains summary information about a user.
966type UserSummary struct {
967
968	// The Amazon Resource Name (ARN) of the user account.
969	Arn *string
970
971	// The identifier of the user account.
972	Id *string
973
974	// The Amazon Connect user name of the user account.
975	Username *string
976}
977
978// Contains information about the recording configuration settings.
979type VoiceRecordingConfiguration struct {
980
981	// Identifies which track is being recorded.
982	VoiceRecordingTrack VoiceRecordingTrack
983}
984