@devrev/typescript-sdk 1.1.3 → 1.1.4

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.
@@ -0,0 +1,3731 @@
1
+ /** account */
2
+ export type Account = OrgBase & {
3
+ /**
4
+ * Custom schema fragments.
5
+ * @example ["don:core:<partition>:devo/<dev-org-id>:custom_type_fragment/<custom-type-fragment-id>"]
6
+ */
7
+ custom_schema_fragments?: string[];
8
+ /** Description of the corresponding Account. */
9
+ description?: string;
10
+ /** Company's domain names. Example - 'devrev.ai'. */
11
+ domains?: string[];
12
+ /**
13
+ * External refs are unique identifiers from your customer system of
14
+ * records, stored as a list.
15
+ */
16
+ external_refs: string[];
17
+ /** List of Dev user IDs owning this Account. */
18
+ owned_by: UserSummary[];
19
+ /**
20
+ * Stock schema fragment.
21
+ * @example "don:core:<partition>:devo/<dev-org-id>:custom_type_fragment/<custom-type-fragment-id>"
22
+ */
23
+ stock_schema_fragment?: string;
24
+ /** The Tier of the corresponding Account. */
25
+ tier?: string;
26
+ };
27
+ /**
28
+ * accounts-create-request
29
+ * Request object to create a new account in the Dev organization.
30
+ */
31
+ export interface AccountsCreateRequest {
32
+ /** Application-defined custom fields. */
33
+ custom_fields?: object;
34
+ /** Description of the account. */
35
+ description?: string;
36
+ /** Name of the account. */
37
+ display_name: string;
38
+ /** List of company's domain names. Example - ['devrev.ai']. */
39
+ domains?: string[];
40
+ /**
41
+ * External refs are unique identifiers from your customer system of
42
+ * records, stored as a list. Currently the length of this field is
43
+ * limited to 1.
44
+ * @maxItems 1
45
+ */
46
+ external_refs?: string[];
47
+ /** List of Dev users owning this account. */
48
+ owned_by?: string[];
49
+ /**
50
+ * Schema fragment IDs associated with this account SOR.
51
+ * @example ["don:core:<partition>:devo/<dev-org-id>:custom_type_fragment/<custom-type-fragment-id>"]
52
+ */
53
+ schema_fragment_ids?: string[];
54
+ /** The tier of the account. */
55
+ tier?: string;
56
+ }
57
+ /**
58
+ * accounts-create-response
59
+ * Response object for request to create a new account.
60
+ */
61
+ export interface AccountsCreateResponse {
62
+ account: Account;
63
+ }
64
+ /**
65
+ * accounts-delete-request
66
+ * Request object to delete an account.
67
+ */
68
+ export interface AccountsDeleteRequest {
69
+ /**
70
+ * The ID of account to delete.
71
+ * @example "don:core:<partition>:devo/<dev-org-id>:account/<account-id>"
72
+ */
73
+ id: string;
74
+ }
75
+ /**
76
+ * accounts-delete-response
77
+ * The response to deleting an account.
78
+ */
79
+ export type AccountsDeleteResponse = object;
80
+ /**
81
+ * accounts-export-response
82
+ * The response to exporting a collection of accounts.
83
+ */
84
+ export interface AccountsExportResponse {
85
+ /** The exported accounts. */
86
+ accounts: Account[];
87
+ }
88
+ /**
89
+ * accounts-get-response
90
+ * The returned account.
91
+ */
92
+ export interface AccountsGetResponse {
93
+ account: Account;
94
+ }
95
+ /**
96
+ * accounts-list-response
97
+ * The response to listing all accounts matching the filter criteria.
98
+ */
99
+ export interface AccountsListResponse {
100
+ /** List containing all the accounts */
101
+ accounts: Account[];
102
+ /**
103
+ * The cursor used to iterate subsequent results in accordance to the
104
+ * sort order. If not set, then no later elements exist.
105
+ */
106
+ next_cursor?: string;
107
+ /**
108
+ * The cursor used to iterate preceding results in accordance to the
109
+ * sort order. If not set, then no prior elements exist.
110
+ */
111
+ prev_cursor?: string;
112
+ }
113
+ /**
114
+ * accounts-update-request
115
+ * Request to update details of the account.
116
+ */
117
+ export interface AccountsUpdateRequest {
118
+ /** Application-defined custom fields. */
119
+ custom_fields?: object;
120
+ /** Updated description of the account. */
121
+ description?: string;
122
+ /** Updated display name for the account. */
123
+ display_name?: string;
124
+ /** Updated list of company's domain names. Example - ['devrev.ai']. */
125
+ domains?: string[];
126
+ /**
127
+ * Updated External Refs of account. Currently the length of this
128
+ * field is limited to 1.
129
+ * @maxItems 1
130
+ */
131
+ external_refs?: string[];
132
+ /**
133
+ * The ID of account to update.
134
+ * @example "don:core:<partition>:devo/<dev-org-id>:account/<account-id>"
135
+ */
136
+ id: string;
137
+ /** Updated list of the users owning this account. */
138
+ owned_by?: string[];
139
+ /**
140
+ * Schema fragment IDs associated with this account SOR.
141
+ * @example ["don:core:<partition>:devo/<dev-org-id>:custom_type_fragment/<custom-type-fragment-id>"]
142
+ */
143
+ schema_fragment_ids?: string[];
144
+ /** Updated tier of the account. */
145
+ tier?: string;
146
+ }
147
+ /**
148
+ * accounts-update-response
149
+ * Updated account object.
150
+ */
151
+ export interface AccountsUpdateResponse {
152
+ account: Account;
153
+ }
154
+ /**
155
+ * aggregated-schema
156
+ * List of custom fields from multiple source fragments.
157
+ */
158
+ export type AggregatedSchema = object;
159
+ /** aggregated-schema-get-response */
160
+ export interface AggregatedSchemaGetResponse {
161
+ /** List of custom fields from multiple source fragments. */
162
+ schema: AggregatedSchema;
163
+ }
164
+ /** artifact-summary */
165
+ export type ArtifactSummary = AtomBaseSummary;
166
+ /** atom-base */
167
+ export interface AtomBase {
168
+ created_by?: UserSummary;
169
+ /**
170
+ * Timestamp when the object was created.
171
+ * @format date-time
172
+ */
173
+ created_date?: string;
174
+ /** Human-readable object ID unique to the Dev organization. */
175
+ display_id?: string;
176
+ /** Globally unique object ID. */
177
+ id: string;
178
+ modified_by?: UserSummary;
179
+ /**
180
+ * Timestamp when the object was last modified.
181
+ * @format date-time
182
+ */
183
+ modified_date?: string;
184
+ }
185
+ /** atom-base-summary */
186
+ export interface AtomBaseSummary {
187
+ /** Human-readable object ID unique to the Dev organization. */
188
+ display_id?: string;
189
+ /** Globally unique object ID. */
190
+ id: string;
191
+ }
192
+ /** capability-summary */
193
+ export type CapabilitySummary = PartBaseSummary;
194
+ /** conversation */
195
+ export type Conversation = AtomBase & {
196
+ /** Description of the conversation object. */
197
+ description?: string;
198
+ group?: GroupSummary;
199
+ /** The latest messages on the conversation. */
200
+ messages?: TimelineEntry[];
201
+ /** Metadata on conversation. */
202
+ metadata?: ConversationMetadata;
203
+ /** Owner IDs for the conversation. */
204
+ owned_by?: UserSummary[];
205
+ /** Describes the current stage of a work item. */
206
+ stage?: Stage;
207
+ /** Title of the conversation object. */
208
+ title?: string;
209
+ };
210
+ /**
211
+ * conversation-metadata
212
+ * Metadata on conversation.
213
+ */
214
+ export interface ConversationMetadata {
215
+ /**
216
+ * URL from which the conversation was created if the conversation was
217
+ * created via PLuG.
218
+ */
219
+ url_context?: string;
220
+ }
221
+ /** conversation-summary */
222
+ export type ConversationSummary = AtomBaseSummary & {
223
+ /** Title of the conversation object. */
224
+ title?: string;
225
+ };
226
+ /**
227
+ * conversations-create-request
228
+ * The request to create a new conversation.
229
+ */
230
+ export interface ConversationsCreateRequest {
231
+ /** Description for the conversation. */
232
+ description?: string;
233
+ /** The group that the conversation is associated with. */
234
+ group?: string;
235
+ /** Whether the conversation is spam. */
236
+ is_spam?: boolean;
237
+ /**
238
+ * The users in the conversation.
239
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:devu/<dev-user-id>"]
240
+ */
241
+ members?: string[];
242
+ /** Initial messages on the conversation. */
243
+ messages?: ConversationsCreateRequestMessage[];
244
+ metadata?: ConversationsCreateRequestMetadata;
245
+ /** Whether the conversation is from a source channel. */
246
+ source_channel?: string;
247
+ /** Sets an object's initial stage. */
248
+ stage?: StageInit;
249
+ /** Tags associated with the conversation. */
250
+ tags?: SetTagWithValue[];
251
+ /** The title for the conversation. */
252
+ title?: string;
253
+ type: ConversationsCreateRequestTypeValue;
254
+ /** The IDs of user sessions associated with the conversation. */
255
+ user_sessions?: string[];
256
+ }
257
+ /** conversations-create-request-message */
258
+ export interface ConversationsCreateRequestMessage {
259
+ /**
260
+ * The IDs of the artifacts to the message.
261
+ * @example ["don:core:<partition>:devo/<dev-org-id>:artifact/<artifact-id>"]
262
+ */
263
+ artifacts?: string[];
264
+ /** The message's body. */
265
+ body?: string;
266
+ }
267
+ /** conversations-create-request-metadata */
268
+ export interface ConversationsCreateRequestMetadata {
269
+ url_context?: string;
270
+ }
271
+ export declare enum ConversationsCreateRequestTypeValue {
272
+ Support = "support"
273
+ }
274
+ /**
275
+ * conversations-create-response
276
+ * The response to creating a new conversation.
277
+ */
278
+ export interface ConversationsCreateResponse {
279
+ conversation: Conversation;
280
+ }
281
+ /**
282
+ * conversations-delete-request
283
+ * The request to delete a conversation.
284
+ */
285
+ export interface ConversationsDeleteRequest {
286
+ /** The ID of the conversation to delete. */
287
+ id: string;
288
+ }
289
+ /**
290
+ * conversations-delete-response
291
+ * The response for deleting a conversation.
292
+ */
293
+ export type ConversationsDeleteResponse = object;
294
+ /** conversations-export-response */
295
+ export interface ConversationsExportResponse {
296
+ /** The resulting collection of conversation items. */
297
+ conversations: Conversation[];
298
+ }
299
+ /**
300
+ * conversations-get-response
301
+ * The response to getting a conversation's information.
302
+ */
303
+ export interface ConversationsGetResponse {
304
+ conversation: Conversation;
305
+ }
306
+ /**
307
+ * conversations-list-response
308
+ * The response to listing the conversations.
309
+ */
310
+ export interface ConversationsListResponse {
311
+ /** The list of conversations. */
312
+ conversations: Conversation[];
313
+ /**
314
+ * The cursor used to iterate subsequent results in accordance to the
315
+ * sort order. If not set, then no later elements exist.
316
+ */
317
+ next_cursor?: string;
318
+ /**
319
+ * The cursor used to iterate preceding results in accordance to the
320
+ * sort order. If not set, then no prior elements exist.
321
+ */
322
+ prev_cursor?: string;
323
+ }
324
+ /**
325
+ * conversations-update-request
326
+ * The request to update a conversation.
327
+ */
328
+ export interface ConversationsUpdateRequest {
329
+ applies_to_parts?: ConversationsUpdateRequestAppliesToParts;
330
+ /** The updated description for the conversation. */
331
+ description?: string;
332
+ /** The group that the conversation is associated with. */
333
+ group?: string;
334
+ /** The ID of the conversation to update. */
335
+ id: string;
336
+ /** Whether the conversation is spam. */
337
+ is_spam?: boolean;
338
+ metadata?: ConversationsUpdateRequestMetadata;
339
+ /** Updates an object's stage. */
340
+ stage?: StageUpdate;
341
+ /** The updated status of the conversation. */
342
+ status?: string;
343
+ tags?: ConversationsUpdateRequestTags;
344
+ /** The updated title of the conversation. */
345
+ title?: string;
346
+ user_sessions?: ConversationsUpdateRequestUserSessions;
347
+ }
348
+ /** conversations-update-request-applies-to-parts */
349
+ export interface ConversationsUpdateRequestAppliesToParts {
350
+ /**
351
+ * Updates the parts that the conversation applies to.
352
+ * @example ["don:core:<partition>:devo/<dev-org-id>:<part-type>/<part-id>"]
353
+ */
354
+ set?: string[];
355
+ }
356
+ /** conversations-update-request-metadata */
357
+ export interface ConversationsUpdateRequestMetadata {
358
+ url_context?: string;
359
+ }
360
+ /** conversations-update-request-tags */
361
+ export interface ConversationsUpdateRequestTags {
362
+ /** Sets the tag IDs to the provided tags. */
363
+ set?: SetTagWithValue[];
364
+ }
365
+ /** conversations-update-request-user-sessions */
366
+ export interface ConversationsUpdateRequestUserSessions {
367
+ /** The updated user sessions that the conversation is associated with. */
368
+ set?: string[];
369
+ }
370
+ /**
371
+ * conversations-update-response
372
+ * The response for updating a conversation.
373
+ */
374
+ export interface ConversationsUpdateResponse {
375
+ conversation: Conversation;
376
+ }
377
+ /** custom-schema-fragment */
378
+ export interface CustomSchemaFragment {
379
+ type: CustomSchemaFragmentType;
380
+ }
381
+ /**
382
+ * custom-schema-fragment-condition
383
+ * The condition associated with a field.
384
+ */
385
+ export type CustomSchemaFragmentCondition = object;
386
+ export type CustomSchemaFragmentType = string;
387
+ /** custom-schema-fragments-get-response */
388
+ export interface CustomSchemaFragmentsGetResponse {
389
+ fragment: CustomSchemaFragment;
390
+ }
391
+ /** custom-schema-fragments-list-response */
392
+ export interface CustomSchemaFragmentsListResponse {
393
+ /**
394
+ * The cursor to resume iteration from, otherwise if not provided,
395
+ * then iteration starts from the beginning.
396
+ */
397
+ cursor?: string;
398
+ /** The custom schema fragments. */
399
+ result: CustomSchemaFragment[];
400
+ }
401
+ /** custom-schema-fragments-set-request */
402
+ export type CustomSchemaFragmentsSetRequest = (CustomSchemaFragmentsSetRequestAppFragment | CustomSchemaFragmentsSetRequestCustomTypeFragment | CustomSchemaFragmentsSetRequestTenantFragment) & {
403
+ /** List of conditions for this fragment. */
404
+ conditions?: CustomSchemaFragmentCondition[];
405
+ /** True if this fragment has been deprecated. */
406
+ deprecated?: boolean;
407
+ /** The description of the custom schema fragment. */
408
+ description: string;
409
+ /** List of all fields in this fragment. */
410
+ fields?: SchemaFieldDescriptor[];
411
+ /** The leaf type this fragment applies to. */
412
+ leaf_type: string;
413
+ type: CustomSchemaFragmentsSetRequestType;
414
+ };
415
+ /** custom-schema-fragments-set-request-app-fragment */
416
+ export interface CustomSchemaFragmentsSetRequestAppFragment {
417
+ /** The app this fragment applies to. */
418
+ app: string;
419
+ /** The name of the app fragment. */
420
+ app_fragment_name: string;
421
+ }
422
+ /** custom-schema-fragments-set-request-custom-type-fragment */
423
+ export interface CustomSchemaFragmentsSetRequestCustomTypeFragment {
424
+ /** List of stock field enum overrides. */
425
+ stock_field_enum_overrides?: StockFieldEnumOverride[];
426
+ /** The string used to populate the subtype in the leaf type. */
427
+ subtype: string;
428
+ /** The display name of the subtype. */
429
+ subtype_display_name?: string;
430
+ }
431
+ /** custom-schema-fragments-set-request-tenant-fragment */
432
+ export type CustomSchemaFragmentsSetRequestTenantFragment = object;
433
+ export declare enum CustomSchemaFragmentsSetRequestType {
434
+ AppFragment = "app_fragment",
435
+ CustomTypeFragment = "custom_type_fragment",
436
+ TenantFragment = "tenant_fragment"
437
+ }
438
+ /** custom-schema-fragments-set-response */
439
+ export interface CustomSchemaFragmentsSetResponse {
440
+ /** The ID of the custom schema fragment. */
441
+ id: string;
442
+ }
443
+ /** dev-user-summary */
444
+ export type DevUserSummary = UserBaseSummary;
445
+ /** empty */
446
+ export type Empty = object;
447
+ /** engagement */
448
+ export type Engagement = AtomBase & {
449
+ /** Description of the engagement object. */
450
+ description?: string;
451
+ };
452
+ /** engagements-count-response */
453
+ export interface EngagementsCountResponse {
454
+ /**
455
+ * The number of engagements matching the filter.
456
+ * @format int64
457
+ */
458
+ count: number;
459
+ }
460
+ /** engagements-create-request */
461
+ export interface EngagementsCreateRequest {
462
+ /** The description of the engagement. */
463
+ description?: string;
464
+ /** The type of engagement. */
465
+ engagement_type?: EngagementsCreateRequestEngagementType;
466
+ /** External URL for the engagement. */
467
+ external_url?: string;
468
+ /**
469
+ * IDs of the users that were part of the engagement.
470
+ * @maxItems 50
471
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:devu/<dev-user-id>"]
472
+ */
473
+ members?: string[];
474
+ /**
475
+ * The parent object ID in which the engagement was created.
476
+ * Currently, only accounts and opportunities are supported.
477
+ * @example "don:core:<partition>:devo/<dev-org-id>:account/<account-id>"
478
+ */
479
+ parent: string;
480
+ /**
481
+ * The date and time when the engagement was scheduled.
482
+ * @format date-time
483
+ */
484
+ scheduled_date?: string;
485
+ /** Tags associated with the engagement. */
486
+ tags?: SetTagWithValue[];
487
+ /** The title of the engagement. */
488
+ title: string;
489
+ }
490
+ /** The type of engagement. */
491
+ export declare enum EngagementsCreateRequestEngagementType {
492
+ Call = "call",
493
+ Email = "email",
494
+ LinkedIn = "linked_in",
495
+ Offline = "offline"
496
+ }
497
+ /** engagements-create-response */
498
+ export interface EngagementsCreateResponse {
499
+ engagement: Engagement;
500
+ }
501
+ /** engagements-delete-request */
502
+ export interface EngagementsDeleteRequest {
503
+ /** The engagement ID. */
504
+ id: string;
505
+ }
506
+ /** engagements-delete-response */
507
+ export type EngagementsDeleteResponse = object;
508
+ /** engagements-get-response */
509
+ export interface EngagementsGetResponse {
510
+ engagement: Engagement;
511
+ }
512
+ /** engagements-list-response */
513
+ export interface EngagementsListResponse {
514
+ /** The list of engagements. */
515
+ engagements: Engagement[];
516
+ /**
517
+ * The cursor used to iterate subsequent results in accordance to the
518
+ * sort order. If not set, then no later elements exist.
519
+ */
520
+ next_cursor?: string;
521
+ /**
522
+ * The cursor used to iterate preceding results in accordance to the
523
+ * sort order. If not set, then no prior elements exist.
524
+ */
525
+ prev_cursor?: string;
526
+ }
527
+ /** engagements-update-request */
528
+ export interface EngagementsUpdateRequest {
529
+ /** Updates the description of the engagement. */
530
+ description?: string;
531
+ /** Updates the external URL for the engagement. */
532
+ external_url?: string;
533
+ /** The engagement ID. */
534
+ id: string;
535
+ members?: EngagementsUpdateRequestMembers;
536
+ /**
537
+ * Updates the date and time when the engagement was scheduled.
538
+ * @format date-time
539
+ */
540
+ scheduled_date?: string | null;
541
+ tags?: EngagementsUpdateRequestTags;
542
+ /** Updates the title of the engagement. */
543
+ title?: string;
544
+ }
545
+ /** engagements-update-request-members */
546
+ export interface EngagementsUpdateRequestMembers {
547
+ /**
548
+ * Sets the members to the provided user IDs. If specified, this must
549
+ * not be empty.
550
+ * @maxItems 50
551
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:devu/<dev-user-id>"]
552
+ */
553
+ set?: string[];
554
+ }
555
+ /** engagements-update-request-tags */
556
+ export interface EngagementsUpdateRequestTags {
557
+ /** Sets the provided tags on the engagement item. */
558
+ set?: SetTagWithValue[];
559
+ }
560
+ /** engagements-update-response */
561
+ export interface EngagementsUpdateResponse {
562
+ engagement: Engagement;
563
+ }
564
+ /** enhancement-summary */
565
+ export type EnhancementSummary = PartBaseSummary;
566
+ /** error */
567
+ export interface Error {
568
+ /** Information about the error. */
569
+ message: string;
570
+ /**
571
+ * The corresponding HTTP status code.
572
+ * @format int32
573
+ */
574
+ status: number;
575
+ /** The error type. */
576
+ type?: string;
577
+ }
578
+ /** error-bad-request */
579
+ export type ErrorBadRequest = ErrorBase & (ErrorBadRequestBadRequest | ErrorBadRequestInvalidEnumValue | ErrorBadRequestInvalidField | ErrorBadRequestMissingRequiredField | ErrorBadRequestParseError | ErrorBadRequestValueNotPermitted) & {
580
+ type: ErrorBadRequestType;
581
+ };
582
+ /** error-bad-request-bad-request */
583
+ export type ErrorBadRequestBadRequest = object;
584
+ /** error-bad-request-invalid-enum-value */
585
+ export interface ErrorBadRequestInvalidEnumValue {
586
+ /** The allowed values for the field. */
587
+ allowed_values: string[];
588
+ /** The field whose enum value is invalid. */
589
+ field_name: string;
590
+ /** The value that was received. */
591
+ value: string;
592
+ }
593
+ /** error-bad-request-invalid-field */
594
+ export interface ErrorBadRequestInvalidField {
595
+ /** The field name that's invalid. */
596
+ field_name: string;
597
+ }
598
+ /** error-bad-request-missing-required-field */
599
+ export interface ErrorBadRequestMissingRequiredField {
600
+ /** The missing field's name. */
601
+ field_name: string;
602
+ }
603
+ /** error-bad-request-parse-error */
604
+ export type ErrorBadRequestParseError = object;
605
+ export declare enum ErrorBadRequestType {
606
+ BadRequest = "bad_request",
607
+ InvalidEnumValue = "invalid_enum_value",
608
+ InvalidField = "invalid_field",
609
+ MissingRequiredField = "missing_required_field",
610
+ ParseError = "parse_error",
611
+ ValueNotPermitted = "value_not_permitted"
612
+ }
613
+ /** error-bad-request-value-not-permitted */
614
+ export interface ErrorBadRequestValueNotPermitted {
615
+ /** The field whose value is not permitted. */
616
+ field_name: string;
617
+ /** The reason the value isn't permitted. */
618
+ reason?: string;
619
+ }
620
+ /** error-base */
621
+ export interface ErrorBase {
622
+ /** Error detail information. */
623
+ detail?: string;
624
+ /** The message associated with the error. */
625
+ message?: string;
626
+ }
627
+ /** error-forbidden */
628
+ export type ErrorForbidden = ErrorBase & ErrorForbiddenForbidden & {
629
+ type: ErrorForbiddenType;
630
+ };
631
+ /** error-forbidden-forbidden */
632
+ export type ErrorForbiddenForbidden = object;
633
+ export declare enum ErrorForbiddenType {
634
+ Forbidden = "forbidden"
635
+ }
636
+ /** error-internal-server-error */
637
+ export type ErrorInternalServerError = ErrorBase & ErrorInternalServerErrorInternalError & {
638
+ /**
639
+ * A unique ID that's generated for the error that can be used for
640
+ * inquiry.
641
+ */
642
+ reference_id?: string;
643
+ type: ErrorInternalServerErrorType;
644
+ };
645
+ /** error-internal-server-error-internal-error */
646
+ export type ErrorInternalServerErrorInternalError = object;
647
+ export declare enum ErrorInternalServerErrorType {
648
+ InternalError = "internal_error"
649
+ }
650
+ /** error-not-found */
651
+ export type ErrorNotFound = ErrorBase & ErrorNotFoundNotFound & {
652
+ type: ErrorNotFoundType;
653
+ };
654
+ /** error-not-found-not-found */
655
+ export type ErrorNotFoundNotFound = object;
656
+ export declare enum ErrorNotFoundType {
657
+ NotFound = "not_found"
658
+ }
659
+ /** error-service-unavailable */
660
+ export type ErrorServiceUnavailable = ErrorBase & ErrorServiceUnavailableServiceUnavailable & {
661
+ type: ErrorServiceUnavailableType;
662
+ };
663
+ /** error-service-unavailable-service-unavailable */
664
+ export type ErrorServiceUnavailableServiceUnavailable = object;
665
+ export declare enum ErrorServiceUnavailableType {
666
+ ServiceUnavailable = "service_unavailable"
667
+ }
668
+ /** error-too-many-requests */
669
+ export type ErrorTooManyRequests = ErrorBase & ErrorTooManyRequestsTooManyRequests & {
670
+ /**
671
+ * The number of seconds after which the client should retry.
672
+ * @format int64
673
+ */
674
+ retry_after?: number;
675
+ type: ErrorTooManyRequestsType;
676
+ };
677
+ /** error-too-many-requests-too-many-requests */
678
+ export type ErrorTooManyRequestsTooManyRequests = object;
679
+ export declare enum ErrorTooManyRequestsType {
680
+ TooManyRequests = "too_many_requests"
681
+ }
682
+ /** error-unauthorized */
683
+ export type ErrorUnauthorized = ErrorBase & ErrorUnauthorizedUnauthenticated & {
684
+ type: ErrorUnauthorizedType;
685
+ };
686
+ export declare enum ErrorUnauthorizedType {
687
+ Unauthenticated = "unauthenticated"
688
+ }
689
+ /** error-unauthorized-unauthenticated */
690
+ export type ErrorUnauthorizedUnauthenticated = object;
691
+ /** event-sources-delete-scheduled-event-request */
692
+ export interface EventSourcesDeleteScheduledEventRequest {
693
+ /** The event key for the event which we want to delete. */
694
+ event_key: string;
695
+ /** The event source's ID. */
696
+ id: string;
697
+ }
698
+ /** event-sources-schedule-event-request */
699
+ export interface EventSourcesScheduleEventRequest {
700
+ /**
701
+ * A unique key for this event (scoped to an event source) used for
702
+ * updating/getting/deleting scheduled events.
703
+ */
704
+ event_key?: string;
705
+ /** The type of the event. */
706
+ event_type: string;
707
+ /** The event source's ID. */
708
+ id: string;
709
+ /**
710
+ * The raw payload of the event.
711
+ * @format byte
712
+ */
713
+ payload: string;
714
+ /**
715
+ * The timestamp at which the event should be published. The event is
716
+ * guaranteed to be published after this. If omitted, the event is
717
+ * published immediately.
718
+ * @format date-time
719
+ */
720
+ publish_at?: string;
721
+ /**
722
+ * Whether or not to update an existing scheduled event with the same
723
+ * event key. If this is false, and an event is already scheduled with
724
+ * the same event key, then HTTP 409 Conflict is returned.
725
+ */
726
+ update_if_exists?: boolean;
727
+ }
728
+ /** event-sources-schedule-event-response */
729
+ export interface EventSourcesScheduleEventResponse {
730
+ /**
731
+ * The event key for this event. Auto-generated if the caller doesn't
732
+ * specify the event key. This may be empty if the event was published
733
+ * immediately.
734
+ */
735
+ event_key?: string;
736
+ }
737
+ /** feature-summary */
738
+ export type FeatureSummary = PartBaseSummary;
739
+ /** group-summary */
740
+ export type GroupSummary = AtomBaseSummary;
741
+ /** issue */
742
+ export type Issue = WorkBase & {
743
+ /** Priority of the work based upon impact and criticality. */
744
+ priority?: IssuePriority;
745
+ };
746
+ /** Priority of the work based upon impact and criticality. */
747
+ export declare enum IssuePriority {
748
+ P0 = "p0",
749
+ P1 = "p1",
750
+ P2 = "p2",
751
+ P3 = "p3"
752
+ }
753
+ /** issue-summary */
754
+ export type IssueSummary = WorkBaseSummary & {
755
+ /** Priority of the work based upon impact and criticality. */
756
+ priority?: IssuePriority;
757
+ };
758
+ /** link */
759
+ export type Link = AtomBase & {
760
+ /** Type of link used to define the relationship. */
761
+ link_type: LinkType;
762
+ source: LinkEndpointSummary;
763
+ target: LinkEndpointSummary;
764
+ };
765
+ /** link-endpoint-summary */
766
+ export type LinkEndpointSummary = (CapabilitySummary | ConversationSummary | EnhancementSummary | FeatureSummary | IssueSummary | OpportunitySummary | ProductSummary | TicketSummary) & {
767
+ type: LinkEndpointType;
768
+ };
769
+ export declare enum LinkEndpointType {
770
+ Capability = "capability",
771
+ Conversation = "conversation",
772
+ Enhancement = "enhancement",
773
+ Feature = "feature",
774
+ Issue = "issue",
775
+ Opportunity = "opportunity",
776
+ Product = "product",
777
+ Ticket = "ticket"
778
+ }
779
+ /**
780
+ * link-rev-user-to-rev-org-request
781
+ * A request to link a rev user to a rev org.
782
+ */
783
+ export interface LinkRevUserToRevOrgRequest {
784
+ /**
785
+ * The don of the rev org to link the rev user to.
786
+ * @example "don:identity:<partition>:devo/<dev-org-id>:revo/<rev-org-id>"
787
+ */
788
+ rev_org_don: string;
789
+ /** The don of the rev user to link. */
790
+ user_don: string;
791
+ }
792
+ /**
793
+ * link-rev-user-to-rev-org-response
794
+ * The response to link a rev user to a rev org.
795
+ */
796
+ export interface LinkRevUserToRevOrgResponse {
797
+ rev_user: RevUser;
798
+ }
799
+ /** Type of link used to define the relationship. */
800
+ export declare enum LinkType {
801
+ DevelopedWith = "developed_with",
802
+ Imports = "imports",
803
+ IsDependentOn = "is_dependent_on",
804
+ IsDuplicateOf = "is_duplicate_of",
805
+ IsParentOf = "is_parent_of",
806
+ IsPartOf = "is_part_of",
807
+ IsRelatedTo = "is_related_to",
808
+ Serves = "serves"
809
+ }
810
+ /**
811
+ * links-create-request
812
+ * The request to create a new link.
813
+ */
814
+ export interface LinksCreateRequest {
815
+ /** Type of link used to define the relationship. */
816
+ link_type: LinkType;
817
+ /** The ID of the source object. */
818
+ source: string;
819
+ /** The ID of the target object. */
820
+ target: string;
821
+ }
822
+ /**
823
+ * links-create-response
824
+ * The response to creating a new link.
825
+ */
826
+ export interface LinksCreateResponse {
827
+ link: Link;
828
+ }
829
+ /**
830
+ * links-delete-request
831
+ * The request to delete a link.
832
+ */
833
+ export interface LinksDeleteRequest {
834
+ /** The ID of the link to delete. */
835
+ id: string;
836
+ }
837
+ /**
838
+ * links-delete-response
839
+ * The response for deleting a link.
840
+ */
841
+ export type LinksDeleteResponse = object;
842
+ /**
843
+ * The direction of link, which can either be outbound such that the
844
+ * object is the source of the link, otherwise inbound where the object is
845
+ * the target of the link.
846
+ */
847
+ export declare enum LinksDirection {
848
+ IsSource = "is_source",
849
+ IsTarget = "is_target"
850
+ }
851
+ /**
852
+ * links-get-response
853
+ * The response to getting a link's information.
854
+ */
855
+ export interface LinksGetResponse {
856
+ link: Link;
857
+ }
858
+ /**
859
+ * links-list-response
860
+ * The response to listing the links.
861
+ */
862
+ export interface LinksListResponse {
863
+ /** The list of links. */
864
+ links: Link[];
865
+ /**
866
+ * The cursor used to iterate subsequent results in accordance to the
867
+ * sort order. If not set, then no later elements exist.
868
+ */
869
+ next_cursor?: string;
870
+ /**
871
+ * The cursor used to iterate preceding results in accordance to the
872
+ * sort order. If not set, then no prior elements exist.
873
+ */
874
+ prev_cursor?: string;
875
+ }
876
+ /**
877
+ * The iteration mode to use. If "after", then entries after the provided
878
+ * cursor will be returned, or if no cursor is provided, then from the
879
+ * beginning. If "before", then entries before the provided cursor will be
880
+ * returned, or if no cursor is provided, then from the end. Entries will
881
+ * always be returned in the specified sort-by order.
882
+ */
883
+ export declare enum ListMode {
884
+ After = "after",
885
+ Before = "before"
886
+ }
887
+ /** metric-definition */
888
+ export type MetricDefinition = AtomBase;
889
+ /** The list of item types on which the metric might be applied. */
890
+ export declare enum MetricDefinitionAppliesTo {
891
+ Conversation = "conversation",
892
+ Issue = "issue",
893
+ Task = "task",
894
+ Ticket = "ticket"
895
+ }
896
+ /**
897
+ * The type of the metric. 'time' metrics track the time spent in some
898
+ * state, supporting operations like 'start', 'stop', 'pause', 'resume'.
899
+ * 'value' metrics track a value, supporting operations like 'set',
900
+ * 'increment', 'decrement'.
901
+ */
902
+ export declare enum MetricDefinitionMetricType {
903
+ Time = "time",
904
+ Value = "value"
905
+ }
906
+ /** metric-definitions-list-response */
907
+ export interface MetricDefinitionsListResponse {
908
+ /** The list of metric definitions. */
909
+ metric_definitions: MetricDefinition[];
910
+ /**
911
+ * The cursor used to iterate subsequent results in accordance to the
912
+ * sort order. If not set, then no later elements exist.
913
+ */
914
+ next_cursor?: string;
915
+ /**
916
+ * The cursor used to iterate preceding results in accordance to the
917
+ * sort order. If not set, then no prior elements exist.
918
+ */
919
+ prev_cursor?: string;
920
+ }
921
+ /** opportunity */
922
+ export type Opportunity = WorkBase;
923
+ /** opportunity-summary */
924
+ export type OpportunitySummary = WorkBaseSummary;
925
+ /** org-base */
926
+ export type OrgBase = AtomBase & {
927
+ /** Name of the Organization. */
928
+ display_name?: string;
929
+ };
930
+ /** org-base-summary */
931
+ export type OrgBaseSummary = AtomBaseSummary & {
932
+ /** Name of the Organization. */
933
+ display_name?: string;
934
+ };
935
+ /** The environment of the Org. Defaults to 'production' if not specified. */
936
+ export declare enum OrgEnvironment {
937
+ Production = "production",
938
+ Staging = "staging",
939
+ Test = "test"
940
+ }
941
+ /** org-summary */
942
+ export type OrgSummary = RevOrgSummary & {
943
+ type: OrgType;
944
+ };
945
+ export declare enum OrgType {
946
+ RevOrg = "rev_org"
947
+ }
948
+ /** part-base-summary */
949
+ export type PartBaseSummary = AtomBaseSummary & {
950
+ /** Name of the part. */
951
+ name: string;
952
+ };
953
+ /** part-summary */
954
+ export type PartSummary = (CapabilitySummary | EnhancementSummary | FeatureSummary | ProductSummary) & {
955
+ type: PartType;
956
+ };
957
+ export declare enum PartType {
958
+ Capability = "capability",
959
+ Enhancement = "enhancement",
960
+ Feature = "feature",
961
+ Product = "product"
962
+ }
963
+ /** product-summary */
964
+ export type ProductSummary = PartBaseSummary;
965
+ /** rev-org */
966
+ export type RevOrg = OrgBase & {
967
+ /**
968
+ * Custom schema fragments.
969
+ * @example ["don:core:<partition>:devo/<dev-org-id>:custom_type_fragment/<custom-type-fragment-id>"]
970
+ */
971
+ custom_schema_fragments?: string[];
972
+ /** Description of the Rev organization. */
973
+ description?: string;
974
+ /** Company's domain name. Example - 'devrev.ai'. */
975
+ domain?: string;
976
+ /**
977
+ * External ref is a unique identifier for the Rev (customer)
978
+ * organization from your primary customer system of records. If none
979
+ * is specified, a system-generated identifier will be assigned to the
980
+ * organization.
981
+ */
982
+ external_ref?: string;
983
+ /**
984
+ * Stock schema fragment.
985
+ * @example "don:core:<partition>:devo/<dev-org-id>:custom_type_fragment/<custom-type-fragment-id>"
986
+ */
987
+ stock_schema_fragment?: string;
988
+ };
989
+ /** rev-org-summary */
990
+ export type RevOrgSummary = OrgBaseSummary;
991
+ /**
992
+ * rev-orgs-create-request
993
+ * Request object to create a new Rev organization in the Dev
994
+ * organization.
995
+ */
996
+ export interface RevOrgsCreateRequest {
997
+ /** Application-defined custom fields. */
998
+ custom_fields?: object;
999
+ /**
1000
+ * Schema fragment IDs associated with this Rev organization.
1001
+ * @example ["don:core:<partition>:devo/<dev-org-id>:custom_type_fragment/<custom-type-fragment-id>"]
1002
+ */
1003
+ custom_schema_fragments?: string[];
1004
+ /** Description of the Rev organization. */
1005
+ description?: string;
1006
+ /** Name of the Rev organization. */
1007
+ display_name: string;
1008
+ /** Company's domain name. Example - 'devrev.ai'. */
1009
+ domain?: string;
1010
+ /** The environment of the Org. Defaults to 'production' if not specified. */
1011
+ environment?: OrgEnvironment;
1012
+ /**
1013
+ * External ref is a custom unique identifier which is a reference to
1014
+ * an unique id for this organization's data in some system of
1015
+ * records.
1016
+ */
1017
+ external_ref?: string;
1018
+ /** The tier of the RevOrg. */
1019
+ tier?: string;
1020
+ }
1021
+ /**
1022
+ * rev-orgs-create-response
1023
+ * Response object for request to create a new Rev organization.
1024
+ */
1025
+ export interface RevOrgsCreateResponse {
1026
+ rev_org: RevOrg;
1027
+ }
1028
+ /**
1029
+ * rev-orgs-get-response
1030
+ * The response to getting a Rev organization's information.
1031
+ */
1032
+ export interface RevOrgsGetResponse {
1033
+ rev_org: RevOrg;
1034
+ }
1035
+ /**
1036
+ * rev-orgs-list-response
1037
+ * The response to getting a list of Rev organizations' information.
1038
+ */
1039
+ export interface RevOrgsListResponse {
1040
+ /**
1041
+ * The cursor used to iterate subsequent results in accordance to the
1042
+ * sort order. If not set, then no later elements exist.
1043
+ */
1044
+ next_cursor?: string;
1045
+ /**
1046
+ * The cursor used to iterate preceding results in accordance to the
1047
+ * sort order. If not set, then no prior elements exist.
1048
+ */
1049
+ prev_cursor?: string;
1050
+ /** List with all of the Rev organizations' information. */
1051
+ rev_orgs: RevOrg[];
1052
+ }
1053
+ /**
1054
+ * rev-orgs-update-request
1055
+ * Request object to update information of the Rev organization.
1056
+ */
1057
+ export interface RevOrgsUpdateRequest {
1058
+ /**
1059
+ * Schema fragment IDs associated with this Rev organization.
1060
+ * @example ["don:core:<partition>:devo/<dev-org-id>:custom_type_fragment/<custom-type-fragment-id>"]
1061
+ */
1062
+ custom_schema_fragments?: string[];
1063
+ /** Description of the Rev organization. */
1064
+ description?: string;
1065
+ /** Customer chosen name for the Rev organization. */
1066
+ display_name?: string;
1067
+ /** Company's domain name. Example - 'devrev.ai'. */
1068
+ domain?: string;
1069
+ /** The environment of the Org. Defaults to 'production' if not specified. */
1070
+ environment?: OrgEnvironment;
1071
+ /**
1072
+ * External ref is a custom unique identifier which is a reference to
1073
+ * an unique id for this organization's data in some system of
1074
+ * records.
1075
+ */
1076
+ external_ref?: string;
1077
+ /**
1078
+ * The ID of Rev organization to update.
1079
+ * @example "don:identity:<partition>:devo/<dev-org-id>:revo/<rev-org-id>"
1080
+ */
1081
+ id: string;
1082
+ /** The tier of the RevOrg. */
1083
+ tier?: string;
1084
+ }
1085
+ /**
1086
+ * rev-orgs-update-response
1087
+ * Response object to updating Rev organization's information.
1088
+ */
1089
+ export interface RevOrgsUpdateResponse {
1090
+ rev_org: RevOrg;
1091
+ }
1092
+ /** rev-user */
1093
+ export type RevUser = UserBase & {
1094
+ /**
1095
+ * Custom schema fragments.
1096
+ * @example ["don:core:<partition>:devo/<dev-org-id>:custom_type_fragment/<custom-type-fragment-id>"]
1097
+ */
1098
+ custom_schema_fragments?: string[];
1099
+ /** Description of the Rev user. */
1100
+ description?: string;
1101
+ /**
1102
+ * External ref is a mutable unique identifier for a user within the
1103
+ * Rev organization from your primary customer record. If none is
1104
+ * available, a good alternative is the email address/phone number
1105
+ * which could uniquely identify the user. If none is specified, a
1106
+ * system-generated identifier will be assigned to the user.
1107
+ */
1108
+ external_ref?: string;
1109
+ rev_org?: OrgSummary;
1110
+ /**
1111
+ * Stock schema fragment.
1112
+ * @example "don:core:<partition>:devo/<dev-org-id>:custom_type_fragment/<custom-type-fragment-id>"
1113
+ */
1114
+ stock_schema_fragment?: string;
1115
+ };
1116
+ /** rev-user-summary */
1117
+ export type RevUserSummary = UserBaseSummary & {
1118
+ /**
1119
+ * External ref is a mutable unique identifier for a user within the
1120
+ * Rev organization from your primary customer record. If none is
1121
+ * available, a good alternative is the email address/phone number
1122
+ * which could uniquely identify the user. If none is specified, a
1123
+ * system-generated identifier will be assigned to the user.
1124
+ */
1125
+ external_ref?: string;
1126
+ rev_org?: OrgSummary;
1127
+ };
1128
+ /**
1129
+ * rev-users-create-request
1130
+ * Request object to create a new Rev user for a Rev organization.
1131
+ */
1132
+ export interface RevUsersCreateRequest {
1133
+ /** Application-defined custom fields. */
1134
+ custom_fields?: object;
1135
+ /**
1136
+ * The schema fragment IDs associated with the Rev user.
1137
+ * @example ["don:core:<partition>:devo/<dev-org-id>:custom_type_fragment/<custom-type-fragment-id>"]
1138
+ */
1139
+ custom_schema_fragments?: string[];
1140
+ /** Description of the Rev user. */
1141
+ description?: string;
1142
+ /** The user's display name. The name is non-unique and mutable. */
1143
+ display_name?: string;
1144
+ /** Email address of the Rev user. */
1145
+ email?: string;
1146
+ /**
1147
+ * External ref is a mutable unique identifier for a user within the
1148
+ * Dev organization from your primary customer record. If none is
1149
+ * available, a good alternative is the email address/phone number
1150
+ * which could uniquely identify the user. If none is specified, a
1151
+ * system-generated identifier will be assigned to the user.
1152
+ */
1153
+ external_ref?: string;
1154
+ /** Phone numbers of the Rev user. */
1155
+ phone_numbers?: string[];
1156
+ /**
1157
+ * The ID of Rev organization for which a Rev user is to be created.
1158
+ * @example "don:identity:<partition>:devo/<dev-org-id>:revo/<rev-org-id>"
1159
+ */
1160
+ rev_org?: string;
1161
+ }
1162
+ /**
1163
+ * rev-users-create-response
1164
+ * Response object for creating a new Rev user for Rev organization.
1165
+ */
1166
+ export interface RevUsersCreateResponse {
1167
+ rev_user: RevUser;
1168
+ }
1169
+ /**
1170
+ * rev-users-delete-request
1171
+ * Request object to delete a Rev user.
1172
+ */
1173
+ export interface RevUsersDeleteRequest {
1174
+ /** The ID of Rev user to delete. */
1175
+ id: string;
1176
+ }
1177
+ /**
1178
+ * rev-users-delete-response
1179
+ * The response to deleting a Rev user of a Rev organization.
1180
+ */
1181
+ export type RevUsersDeleteResponse = object;
1182
+ /**
1183
+ * rev-users-get-response
1184
+ * The returned Rev user.
1185
+ */
1186
+ export interface RevUsersGetResponse {
1187
+ rev_user: RevUser;
1188
+ }
1189
+ /**
1190
+ * rev-users-list-response
1191
+ * The response to listing all Rev users matching the filter criteria.
1192
+ */
1193
+ export interface RevUsersListResponse {
1194
+ /**
1195
+ * The cursor used to iterate subsequent results in accordance to the
1196
+ * sort order. If not set, then no later elements exist.
1197
+ */
1198
+ next_cursor?: string;
1199
+ /**
1200
+ * The cursor used to iterate preceding results in accordance to the
1201
+ * sort order. If not set, then no prior elements exist.
1202
+ */
1203
+ prev_cursor?: string;
1204
+ /** List containing all the Rev users. */
1205
+ rev_users: RevUser[];
1206
+ }
1207
+ /**
1208
+ * rev-users-update-request
1209
+ * Request to update details of a Rev user.
1210
+ */
1211
+ export interface RevUsersUpdateRequest {
1212
+ /** Application-defined custom fields. */
1213
+ custom_fields?: object;
1214
+ custom_schema_fragments?: RevUsersUpdateRequestCustomSchemaFragments;
1215
+ /** Updated description of the Rev user. */
1216
+ description?: string;
1217
+ /** Updated display name of the Rev user. */
1218
+ display_name?: string;
1219
+ /** Updated email address of the Rev user. */
1220
+ email?: string;
1221
+ /** Updated external ref value of the Rev user. */
1222
+ external_ref?: string;
1223
+ /** The ID of Rev user to update. */
1224
+ id: string;
1225
+ }
1226
+ /** rev-users-update-request-custom-schema-fragments */
1227
+ export interface RevUsersUpdateRequestCustomSchemaFragments {
1228
+ /**
1229
+ * Sets the IDs to the provided schema fragment IDs.
1230
+ * @example ["don:core:<partition>:devo/<dev-org-id>:custom_type_fragment/<custom-type-fragment-id>"]
1231
+ */
1232
+ set?: string[];
1233
+ }
1234
+ /**
1235
+ * rev-users-update-response
1236
+ * Updated Rev user object.
1237
+ */
1238
+ export interface RevUsersUpdateResponse {
1239
+ rev_user: RevUser;
1240
+ }
1241
+ /** schema-bool-field-descriptor */
1242
+ export type SchemaBoolFieldDescriptor = SchemaFieldDescriptorBase & {
1243
+ /** Default value. */
1244
+ default_value?: boolean;
1245
+ };
1246
+ /** schema-bool-list-field-descriptor */
1247
+ export type SchemaBoolListFieldDescriptor = SchemaFieldDescriptorBase & {
1248
+ /** Default value. */
1249
+ default_value?: boolean[];
1250
+ };
1251
+ /** schema-composite-field-descriptor */
1252
+ export type SchemaCompositeFieldDescriptor = SchemaFieldDescriptorBase & {
1253
+ /** Composite type. Required when field type is composite. */
1254
+ composite_type?: string;
1255
+ };
1256
+ /** schema-composite-list-field-descriptor */
1257
+ export type SchemaCompositeListFieldDescriptor = SchemaFieldDescriptorBase & {
1258
+ /** Composite type. Required when field type is composite. */
1259
+ composite_type?: string;
1260
+ };
1261
+ /** schema-double-field-descriptor */
1262
+ export type SchemaDoubleFieldDescriptor = SchemaFieldDescriptorBase & {
1263
+ /**
1264
+ * Default value.
1265
+ * @format double
1266
+ */
1267
+ default_value?: number;
1268
+ };
1269
+ /** schema-double-list-field-descriptor */
1270
+ export type SchemaDoubleListFieldDescriptor = SchemaFieldDescriptorBase & {
1271
+ /** Default value. */
1272
+ default_value?: number[];
1273
+ };
1274
+ /** schema-enum-field-descriptor */
1275
+ export type SchemaEnumFieldDescriptor = SchemaFieldDescriptorBase & {
1276
+ /** Allowed values for the field. */
1277
+ allowed_values: string[];
1278
+ /** Default value. */
1279
+ default_value?: string;
1280
+ };
1281
+ /** schema-enum-list-field-descriptor */
1282
+ export type SchemaEnumListFieldDescriptor = SchemaFieldDescriptorBase & {
1283
+ /** Allowed values for the field. */
1284
+ allowed_values: string[];
1285
+ /** Default value. */
1286
+ default_value?: string[];
1287
+ };
1288
+ /**
1289
+ * schema-field-descriptor
1290
+ * Set of field attributes.
1291
+ */
1292
+ export type SchemaFieldDescriptor = (SchemaBoolFieldDescriptor | SchemaCompositeFieldDescriptor | SchemaDoubleFieldDescriptor | SchemaEnumFieldDescriptor | SchemaFieldDescriptorArrayType | SchemaIdFieldDescriptor | SchemaIntFieldDescriptor | SchemaRichTextFieldDescriptor | SchemaTextFieldDescriptor | SchemaTimestampFieldDescriptor | SchemaTokensFieldDescriptor) & {
1293
+ field_type: SchemaFieldDescriptorFieldType;
1294
+ };
1295
+ /** schema-field-descriptor-array-type */
1296
+ export type SchemaFieldDescriptorArrayType = (SchemaBoolListFieldDescriptor | SchemaCompositeListFieldDescriptor | SchemaDoubleListFieldDescriptor | SchemaEnumListFieldDescriptor | SchemaIdListFieldDescriptor | SchemaIntListFieldDescriptor | SchemaRichTextListFieldDescriptor | SchemaTextListFieldDescriptor | SchemaTimestampListFieldDescriptor | SchemaTokensListFieldDescriptor) & {
1297
+ base_type: SchemaFieldDescriptorArrayTypeBaseType;
1298
+ /**
1299
+ * The maximum array length.
1300
+ * @format int64
1301
+ */
1302
+ max_items?: number;
1303
+ /**
1304
+ * The minimum array length.
1305
+ * @format int64
1306
+ */
1307
+ min_items?: number;
1308
+ };
1309
+ export declare enum SchemaFieldDescriptorArrayTypeBaseType {
1310
+ Bool = "bool",
1311
+ Composite = "composite",
1312
+ Double = "double",
1313
+ Enum = "enum",
1314
+ Id = "id",
1315
+ Int = "int",
1316
+ RichText = "rich_text",
1317
+ Text = "text",
1318
+ Timestamp = "timestamp",
1319
+ Tokens = "tokens"
1320
+ }
1321
+ /** schema-field-descriptor-base */
1322
+ export interface SchemaFieldDescriptorBase {
1323
+ /** Description of the field. */
1324
+ description?: string;
1325
+ /** Whether this field is filterable, groupable and sortable. */
1326
+ is_filterable?: boolean;
1327
+ /**
1328
+ * Whether this field can hold Personally Identifiable Information
1329
+ * (PII).
1330
+ */
1331
+ is_pii?: boolean;
1332
+ /** Whether this field is required or not. */
1333
+ is_required?: boolean;
1334
+ /** Name of the field. */
1335
+ name: string;
1336
+ /** Type this field is from. */
1337
+ origin?: string;
1338
+ /** The schema of ui specific fields. */
1339
+ ui?: SchemaFieldUiMetadata;
1340
+ }
1341
+ export declare enum SchemaFieldDescriptorFieldType {
1342
+ Array = "array",
1343
+ Bool = "bool",
1344
+ Composite = "composite",
1345
+ Double = "double",
1346
+ Enum = "enum",
1347
+ Id = "id",
1348
+ Int = "int",
1349
+ RichText = "rich_text",
1350
+ Text = "text",
1351
+ Timestamp = "timestamp",
1352
+ Tokens = "tokens"
1353
+ }
1354
+ /**
1355
+ * schema-field-ui-metadata
1356
+ * The schema of ui specific fields.
1357
+ */
1358
+ export interface SchemaFieldUiMetadata {
1359
+ /** Display name of the field. */
1360
+ display_name?: string;
1361
+ }
1362
+ /** schema-id-field-descriptor */
1363
+ export type SchemaIdFieldDescriptor = SchemaFieldDescriptorBase & {
1364
+ /** Default value. */
1365
+ default_value?: string;
1366
+ /** Object ID types. Required when field type is ID. */
1367
+ id_type?: string[];
1368
+ };
1369
+ /** schema-id-list-field-descriptor */
1370
+ export type SchemaIdListFieldDescriptor = SchemaFieldDescriptorBase & {
1371
+ /** Default value. */
1372
+ default_value?: string[];
1373
+ /** Object ID types. Required when field type is ID. */
1374
+ id_type?: string[];
1375
+ };
1376
+ /** schema-int-field-descriptor */
1377
+ export type SchemaIntFieldDescriptor = SchemaFieldDescriptorBase & {
1378
+ /**
1379
+ * Default value.
1380
+ * @format int64
1381
+ */
1382
+ default_value?: number;
1383
+ /**
1384
+ * The minimum value for the integer (exclusive).
1385
+ * @format int64
1386
+ */
1387
+ gt?: number;
1388
+ /**
1389
+ * The minimum value for the integer (inclusive).
1390
+ * @format int64
1391
+ */
1392
+ gte?: number;
1393
+ /**
1394
+ * The maximum value for the integer (exclusive).
1395
+ * @format int64
1396
+ */
1397
+ lt?: number;
1398
+ /**
1399
+ * The maximum value for the integer (inclusive).
1400
+ * @format int64
1401
+ */
1402
+ lte?: number;
1403
+ };
1404
+ /** schema-int-list-field-descriptor */
1405
+ export type SchemaIntListFieldDescriptor = SchemaFieldDescriptorBase & {
1406
+ /** Default value. */
1407
+ default_value?: number[];
1408
+ /**
1409
+ * The minimum value for the integer (exclusive).
1410
+ * @format int64
1411
+ */
1412
+ gt?: number;
1413
+ /**
1414
+ * The minimum value for the integer (inclusive).
1415
+ * @format int64
1416
+ */
1417
+ gte?: number;
1418
+ /**
1419
+ * The maximum value for the integer (exclusive).
1420
+ * @format int64
1421
+ */
1422
+ lt?: number;
1423
+ /**
1424
+ * The maximum value for the integer (inclusive).
1425
+ * @format int64
1426
+ */
1427
+ lte?: number;
1428
+ };
1429
+ /** schema-rich-text-field-descriptor */
1430
+ export type SchemaRichTextFieldDescriptor = SchemaFieldDescriptorBase & {
1431
+ /** The contained substring. */
1432
+ contains?: string;
1433
+ /** Default value. */
1434
+ default_value?: string;
1435
+ /**
1436
+ * The exact string length.
1437
+ * @format int64
1438
+ */
1439
+ eq_len?: number;
1440
+ /**
1441
+ * The maximum string length.
1442
+ * @format int64
1443
+ */
1444
+ max_len?: number;
1445
+ /**
1446
+ * The minimum string length.
1447
+ * @format int64
1448
+ */
1449
+ min_len?: number;
1450
+ /** The string pattern (regular expression). */
1451
+ pattern?: string;
1452
+ /** The string prefix. */
1453
+ prefix?: string;
1454
+ /** The string suffix. */
1455
+ suffix?: string;
1456
+ };
1457
+ /** schema-rich-text-list-field-descriptor */
1458
+ export type SchemaRichTextListFieldDescriptor = SchemaFieldDescriptorBase & {
1459
+ /** The contained substring. */
1460
+ contains?: string;
1461
+ /** Default value. */
1462
+ default_value?: string[];
1463
+ /**
1464
+ * The exact string length.
1465
+ * @format int64
1466
+ */
1467
+ eq_len?: number;
1468
+ /**
1469
+ * The maximum string length.
1470
+ * @format int64
1471
+ */
1472
+ max_len?: number;
1473
+ /**
1474
+ * The minimum string length.
1475
+ * @format int64
1476
+ */
1477
+ min_len?: number;
1478
+ /** The string pattern (regular expression). */
1479
+ pattern?: string;
1480
+ /** The string prefix. */
1481
+ prefix?: string;
1482
+ /** The string suffix. */
1483
+ suffix?: string;
1484
+ };
1485
+ /** schema-text-field-descriptor */
1486
+ export type SchemaTextFieldDescriptor = SchemaFieldDescriptorBase & {
1487
+ /** The contained substring. */
1488
+ contains?: string;
1489
+ /** Default value. */
1490
+ default_value?: string;
1491
+ /**
1492
+ * The exact string length.
1493
+ * @format int64
1494
+ */
1495
+ eq_len?: number;
1496
+ /**
1497
+ * The maximum string length.
1498
+ * @format int64
1499
+ */
1500
+ max_len?: number;
1501
+ /**
1502
+ * The minimum string length.
1503
+ * @format int64
1504
+ */
1505
+ min_len?: number;
1506
+ /** The string pattern (regular expression). */
1507
+ pattern?: string;
1508
+ /** The string prefix. */
1509
+ prefix?: string;
1510
+ /** The string suffix. */
1511
+ suffix?: string;
1512
+ };
1513
+ /** schema-text-list-field-descriptor */
1514
+ export type SchemaTextListFieldDescriptor = SchemaFieldDescriptorBase & {
1515
+ /** The contained substring. */
1516
+ contains?: string;
1517
+ /** Default value. */
1518
+ default_value?: string[];
1519
+ /**
1520
+ * The exact string length.
1521
+ * @format int64
1522
+ */
1523
+ eq_len?: number;
1524
+ /**
1525
+ * The maximum string length.
1526
+ * @format int64
1527
+ */
1528
+ max_len?: number;
1529
+ /**
1530
+ * The minimum string length.
1531
+ * @format int64
1532
+ */
1533
+ min_len?: number;
1534
+ /** The string pattern (regular expression). */
1535
+ pattern?: string;
1536
+ /** The string prefix. */
1537
+ prefix?: string;
1538
+ /** The string suffix. */
1539
+ suffix?: string;
1540
+ };
1541
+ /** schema-timestamp-field-descriptor */
1542
+ export type SchemaTimestampFieldDescriptor = SchemaFieldDescriptorBase & {
1543
+ /**
1544
+ * Default value.
1545
+ * @format date-time
1546
+ */
1547
+ default_value?: string;
1548
+ };
1549
+ /** schema-timestamp-list-field-descriptor */
1550
+ export type SchemaTimestampListFieldDescriptor = SchemaFieldDescriptorBase & {
1551
+ /** Default value. */
1552
+ default_value?: string[];
1553
+ };
1554
+ /** schema-tokens-field-descriptor */
1555
+ export type SchemaTokensFieldDescriptor = SchemaFieldDescriptorBase & {
1556
+ /** The contained substring. */
1557
+ contains?: string;
1558
+ /** Default value. */
1559
+ default_value?: string;
1560
+ /**
1561
+ * The exact string length.
1562
+ * @format int64
1563
+ */
1564
+ eq_len?: number;
1565
+ /**
1566
+ * The maximum string length.
1567
+ * @format int64
1568
+ */
1569
+ max_len?: number;
1570
+ /**
1571
+ * The minimum string length.
1572
+ * @format int64
1573
+ */
1574
+ min_len?: number;
1575
+ /** The string pattern (regular expression). */
1576
+ pattern?: string;
1577
+ /** The string prefix. */
1578
+ prefix?: string;
1579
+ /** The string suffix. */
1580
+ suffix?: string;
1581
+ };
1582
+ /** schema-tokens-list-field-descriptor */
1583
+ export type SchemaTokensListFieldDescriptor = SchemaFieldDescriptorBase & {
1584
+ /** The contained substring. */
1585
+ contains?: string;
1586
+ /** Default value. */
1587
+ default_value?: string[];
1588
+ /**
1589
+ * The exact string length.
1590
+ * @format int64
1591
+ */
1592
+ eq_len?: number;
1593
+ /**
1594
+ * The maximum string length.
1595
+ * @format int64
1596
+ */
1597
+ max_len?: number;
1598
+ /**
1599
+ * The minimum string length.
1600
+ * @format int64
1601
+ */
1602
+ min_len?: number;
1603
+ /** The string pattern (regular expression). */
1604
+ pattern?: string;
1605
+ /** The string prefix. */
1606
+ prefix?: string;
1607
+ /** The string suffix. */
1608
+ suffix?: string;
1609
+ };
1610
+ /** set-sla-policy */
1611
+ export interface SetSlaPolicy {
1612
+ /** Metrics to apply to the selected items. */
1613
+ metrics?: SetSupportMetricTarget[];
1614
+ /** Human-readable name. */
1615
+ name: string;
1616
+ selector: SetSlaSelector;
1617
+ }
1618
+ /** set-sla-selector */
1619
+ export interface SetSlaSelector {
1620
+ /** The item type for which the SLA policy applies. */
1621
+ applies_to: SlaSelectorAppliesTo;
1622
+ /**
1623
+ * Custom fields with their fully qualified names and associated with
1624
+ * their exact allowed values. The SLA policy applies to records where
1625
+ * all named custom fields have exactly the specified values. If the
1626
+ * value is null, the field must have null value or not be present.
1627
+ */
1628
+ custom_fields?: object;
1629
+ /**
1630
+ * The SLA policy applies to the tickets of these parts.
1631
+ * @example ["don:core:<partition>:devo/<dev-org-id>:<part-type>/<part-id>"]
1632
+ */
1633
+ parts?: string[];
1634
+ /** The SLA policy applies to conversations with these priorities. */
1635
+ priority?: SlaSelectorPriority[];
1636
+ /** The SLA policy applies to tickets with these severities. */
1637
+ severity?: SlaSelectorSeverity[];
1638
+ /** The SLA policy applies to conversations with these sources. */
1639
+ source_channel?: string[];
1640
+ /**
1641
+ * The SLA policy applies to items with these tags.
1642
+ * @example ["don:core:<partition>:devo/<dev-org-id>:tag/<tag-id>"]
1643
+ */
1644
+ tags?: string[];
1645
+ }
1646
+ /** set-support-metric-target */
1647
+ export interface SetSupportMetricTarget {
1648
+ /** The metric to apply. */
1649
+ metric: string;
1650
+ /**
1651
+ * The organization schedule controlling this metrics calculation.
1652
+ * Time based metrics don't consume time while their schedule is off.
1653
+ */
1654
+ org_schedule_id?: string;
1655
+ /**
1656
+ * The percentage of instances for which this metric's target must not
1657
+ * be breached, in order to avoid breaching the overall SLA policy.
1658
+ * @format double
1659
+ */
1660
+ performance: number;
1661
+ /**
1662
+ * The target value to be achieved, for example the time in which to
1663
+ * do something, or the maximum allowed number of message pairs. The
1664
+ * units and interpretation of the value is controlled by the
1665
+ * properties of the referenced metric.
1666
+ * @format int32
1667
+ */
1668
+ target: number;
1669
+ /**
1670
+ * The threshold in the same units as target where the metric is
1671
+ * considered to be 'at risk'.
1672
+ * @format int32
1673
+ */
1674
+ warning_target?: number;
1675
+ }
1676
+ /** set-tag-with-value */
1677
+ export interface SetTagWithValue {
1678
+ /**
1679
+ * The ID of the tag.
1680
+ * @example "don:core:<partition>:devo/<dev-org-id>:tag/<tag-id>"
1681
+ */
1682
+ id: string;
1683
+ /**
1684
+ * The value for the object's association with the tag. If specified,
1685
+ * the value must be one that's specified in the tag's allowed values.
1686
+ */
1687
+ value?: string;
1688
+ }
1689
+ /** sla */
1690
+ export type Sla = AtomBase & {
1691
+ /**
1692
+ * Describes the compensation to be provided in case of SLA breach. It is
1693
+ * not 'self-executing', it is the responsibility of the organization
1694
+ * providing the SLA to actually transfer the promised credit, resource or
1695
+ * other payment.
1696
+ */
1697
+ compensation?: SlaCompensation;
1698
+ /** Description of the purpose and capabilities of the SLA. */
1699
+ description?: string;
1700
+ /**
1701
+ * Specifies the frequency of when the contractually-meaningful evaluation
1702
+ * of the SLA happens. The organization for their own information might
1703
+ * evaluate the various metrics contained in the policy as often as we can
1704
+ * make it feasible for them, but only the evaluation at the end of the
1705
+ * evaluation period triggers a compensation and needs to be shared with
1706
+ * the customer.
1707
+ */
1708
+ evaluation_period?: SlaEvaluationPeriod;
1709
+ /** Human-readable name. */
1710
+ name: string;
1711
+ /**
1712
+ * The policies encompassed by this SLA, ordered in decreasing
1713
+ * priority.
1714
+ */
1715
+ policies?: SlaPolicy[];
1716
+ /**
1717
+ * Status determines how an item can be used. In 'draft' status an item
1718
+ * can be edited but can't be used. When 'published' the item can longer
1719
+ * be edited but can be used. 'Archived' is read-only.
1720
+ */
1721
+ status: SlaStatus;
1722
+ };
1723
+ /** sla-assign-result */
1724
+ export interface SlaAssignResult {
1725
+ error?: Error;
1726
+ rev_org: RevOrgSummary;
1727
+ }
1728
+ /**
1729
+ * sla-compensation
1730
+ * Describes the compensation to be provided in case of SLA breach. It is
1731
+ * not 'self-executing', it is the responsibility of the organization
1732
+ * providing the SLA to actually transfer the promised credit, resource or
1733
+ * other payment.
1734
+ */
1735
+ export type SlaCompensation = object;
1736
+ /**
1737
+ * Specifies the frequency of when the contractually-meaningful evaluation
1738
+ * of the SLA happens. The organization for their own information might
1739
+ * evaluate the various metrics contained in the policy as often as we can
1740
+ * make it feasible for them, but only the evaluation at the end of the
1741
+ * evaluation period triggers a compensation and needs to be shared with
1742
+ * the customer.
1743
+ */
1744
+ export declare enum SlaEvaluationPeriod {
1745
+ Monthly = "monthly",
1746
+ Quarterly = "quarterly",
1747
+ Weekly = "weekly",
1748
+ Yearly = "yearly"
1749
+ }
1750
+ /**
1751
+ * sla-policy
1752
+ * A policy that represents a promise to your revs.
1753
+ */
1754
+ export type SlaPolicy = object;
1755
+ /** The item type for which the SLA policy applies. */
1756
+ export declare enum SlaSelectorAppliesTo {
1757
+ Conversation = "conversation",
1758
+ Ticket = "ticket"
1759
+ }
1760
+ /** Th SLA policy applies to conversations with these priorities. */
1761
+ export declare enum SlaSelectorPriority {
1762
+ P0 = "p0",
1763
+ P1 = "p1",
1764
+ P2 = "p2"
1765
+ }
1766
+ /** The SLA policy applies to tickets with these severities. */
1767
+ export declare enum SlaSelectorSeverity {
1768
+ Blocker = "blocker",
1769
+ High = "high",
1770
+ Low = "low",
1771
+ Medium = "medium"
1772
+ }
1773
+ /**
1774
+ * Status determines how an item can be used. In 'draft' status an item
1775
+ * can be edited but can't be used. When 'published' the item can longer
1776
+ * be edited but can be used. 'Archived' is read-only.
1777
+ */
1778
+ export declare enum SlaStatus {
1779
+ Archived = "archived",
1780
+ Draft = "draft",
1781
+ Published = "published"
1782
+ }
1783
+ /** slas-assign-request */
1784
+ export interface SlasAssignRequest {
1785
+ /**
1786
+ * The SLA which would be assigned to the Rev organizations. If
1787
+ * omitted, the SLA of all the rev organizations referenced will be
1788
+ * unset.
1789
+ */
1790
+ id?: string;
1791
+ /**
1792
+ * The Rev organizations to apply the SLA to.
1793
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:revo/<rev-org-id>"]
1794
+ */
1795
+ rev_orgs: string[];
1796
+ }
1797
+ /** slas-assign-response */
1798
+ export interface SlasAssignResponse {
1799
+ /** The list of outcomes for each Rev organization. */
1800
+ results: SlaAssignResult[];
1801
+ }
1802
+ /** slas-create-request */
1803
+ export interface SlasCreateRequest {
1804
+ /** Description of the purpose and capabilities of the SLA. */
1805
+ description?: string;
1806
+ /**
1807
+ * Specifies the frequency of when the contractually-meaningful evaluation
1808
+ * of the SLA happens. The organization for their own information might
1809
+ * evaluate the various metrics contained in the policy as often as we can
1810
+ * make it feasible for them, but only the evaluation at the end of the
1811
+ * evaluation period triggers a compensation and needs to be shared with
1812
+ * the customer.
1813
+ */
1814
+ evaluation_period?: SlaEvaluationPeriod;
1815
+ /** Human-readable name. */
1816
+ name: string;
1817
+ /**
1818
+ * The policies encompassed by this SLA, ordered in decreasing
1819
+ * priority.
1820
+ */
1821
+ policies?: SetSlaPolicy[];
1822
+ }
1823
+ /** slas-create-response */
1824
+ export interface SlasCreateResponse {
1825
+ sla: Sla;
1826
+ }
1827
+ /** slas-get-response */
1828
+ export interface SlasGetResponse {
1829
+ sla: Sla;
1830
+ }
1831
+ /** slas-list-response */
1832
+ export interface SlasListResponse {
1833
+ /**
1834
+ * The cursor used to iterate subsequent results in accordance to the
1835
+ * sort order. If not set, then no later elements exist.
1836
+ */
1837
+ next_cursor?: string;
1838
+ /**
1839
+ * The cursor used to iterate preceding results in accordance to the
1840
+ * sort order. If not set, then no prior elements exist.
1841
+ */
1842
+ prev_cursor?: string;
1843
+ /** The list of SLAs. */
1844
+ slas: Sla[];
1845
+ }
1846
+ /** slas-transition-request */
1847
+ export interface SlasTransitionRequest {
1848
+ /** The updated SLA. */
1849
+ id: string;
1850
+ /**
1851
+ * Status determines how an item can be used. In 'draft' status an item
1852
+ * can be edited but can't be used. When 'published' the item can longer
1853
+ * be edited but can be used. 'Archived' is read-only.
1854
+ */
1855
+ status: SlaStatus;
1856
+ }
1857
+ /** slas-transition-response */
1858
+ export interface SlasTransitionResponse {
1859
+ sla: Sla;
1860
+ }
1861
+ /** slas-update-request */
1862
+ export interface SlasUpdateRequest {
1863
+ /** Description of the purpose and capabilities of the SLA. */
1864
+ description?: string;
1865
+ /**
1866
+ * Specifies the frequency of when the contractually-meaningful evaluation
1867
+ * of the SLA happens. The organization for their own information might
1868
+ * evaluate the various metrics contained in the policy as often as we can
1869
+ * make it feasible for them, but only the evaluation at the end of the
1870
+ * evaluation period triggers a compensation and needs to be shared with
1871
+ * the customer.
1872
+ */
1873
+ evaluation_period?: SlaEvaluationPeriod;
1874
+ /** The SLA's ID. */
1875
+ id: string;
1876
+ /** Human-readable name. */
1877
+ name?: string;
1878
+ /**
1879
+ * The policies encompassed by this SLA, ordered in decreasing
1880
+ * priority, the whole array will be overwritten by the contents of
1881
+ * this array.
1882
+ */
1883
+ policies?: SetSlaPolicy[];
1884
+ }
1885
+ /** slas-update-response */
1886
+ export interface SlasUpdateResponse {
1887
+ sla: Sla;
1888
+ }
1889
+ /**
1890
+ * stage
1891
+ * Describes the current stage of a work item.
1892
+ */
1893
+ export interface Stage {
1894
+ /** Current stage name of the work item. */
1895
+ name: string;
1896
+ }
1897
+ /**
1898
+ * stage-init
1899
+ * Sets an object's initial stage.
1900
+ */
1901
+ export interface StageInit {
1902
+ /** The name of the stage. */
1903
+ name?: string;
1904
+ }
1905
+ /**
1906
+ * stage-update
1907
+ * Updates an object's stage.
1908
+ */
1909
+ export interface StageUpdate {
1910
+ /** The updated name of the stage, otherwise unchanged if not set. */
1911
+ name?: string;
1912
+ }
1913
+ /**
1914
+ * stock-field-enum-override
1915
+ * Override for the allowed values of a stock field enum.
1916
+ */
1917
+ export type StockFieldEnumOverride = object;
1918
+ /** subtype */
1919
+ export interface Subtype {
1920
+ /** Display name of the subtype. */
1921
+ display_name?: string;
1922
+ /** DON of the custom type fragment this subtype belongs to. */
1923
+ fragment_id: string;
1924
+ /** Leaf type for the subtype. */
1925
+ leaf_type: string;
1926
+ /** Value of the subtype. */
1927
+ value: string;
1928
+ }
1929
+ /** subtypes-list-response */
1930
+ export interface SubtypesListResponse {
1931
+ /** List of subtypes. */
1932
+ subtypes: Subtype[];
1933
+ }
1934
+ /** sys-user */
1935
+ export type SysUser = UserBase;
1936
+ /** sys-user-summary */
1937
+ export type SysUserSummary = UserBaseSummary;
1938
+ /**
1939
+ * sys-users-list-response
1940
+ * The response to listing the system users.
1941
+ */
1942
+ export interface SysUsersListResponse {
1943
+ /**
1944
+ * The cursor used to iterate subsequent results in accordance to the
1945
+ * sort order. If not set, then no later elements exist.
1946
+ */
1947
+ next_cursor?: string;
1948
+ /**
1949
+ * The cursor used to iterate preceding results in accordance to the
1950
+ * sort order. If not set, then no prior elements exist.
1951
+ */
1952
+ prev_cursor?: string;
1953
+ /** The list of system users. */
1954
+ sys_users: SysUser[];
1955
+ }
1956
+ /**
1957
+ * sys-users-update-request
1958
+ * Request to update information of the system user.
1959
+ */
1960
+ export interface SysUsersUpdateRequest {
1961
+ /** Updated display name for the system user. */
1962
+ display_name?: string;
1963
+ /**
1964
+ * Artifact ID of the system user's new display picture.
1965
+ * @example "don:core:<partition>:devo/<dev-org-id>:artifact/<artifact-id>"
1966
+ */
1967
+ display_picture?: string | null;
1968
+ /** Updated full name for the system user. */
1969
+ full_name?: string;
1970
+ /** The ID of system user to update. */
1971
+ id: string;
1972
+ }
1973
+ /**
1974
+ * sys-users-update-response
1975
+ * Updated Sys user object.
1976
+ */
1977
+ export interface SysUsersUpdateResponse {
1978
+ sys_user: SysUser;
1979
+ }
1980
+ /** tag-summary */
1981
+ export type TagSummary = AtomBaseSummary & {
1982
+ /**
1983
+ * The name of the tag, which denotes the logical concept by which all
1984
+ * tagged objects will be associated. The name is guaranteed to be
1985
+ * unique.
1986
+ */
1987
+ name: string;
1988
+ };
1989
+ /** tag-with-value */
1990
+ export interface TagWithValue {
1991
+ tag: TagSummary;
1992
+ /** The value for the object's association with the tag. */
1993
+ value?: string;
1994
+ }
1995
+ /** Priority of the work based upon impact and criticality. */
1996
+ export declare enum TaskPriority {
1997
+ P0 = "p0",
1998
+ P1 = "p1",
1999
+ P2 = "p2",
2000
+ P3 = "p3"
2001
+ }
2002
+ /** ticket */
2003
+ export type Ticket = WorkBase & {
2004
+ group?: GroupSummary;
2005
+ rev_org?: OrgSummary;
2006
+ /** Severity of the ticket. */
2007
+ severity?: TicketSeverity;
2008
+ };
2009
+ /** Severity of the ticket. */
2010
+ export declare enum TicketSeverity {
2011
+ Blocker = "blocker",
2012
+ High = "high",
2013
+ Low = "low",
2014
+ Medium = "medium"
2015
+ }
2016
+ /** ticket-summary */
2017
+ export type TicketSummary = WorkBaseSummary & {
2018
+ rev_org?: OrgSummary;
2019
+ /** Severity of the ticket. */
2020
+ severity?: TicketSeverity;
2021
+ };
2022
+ /** timeline-comment */
2023
+ export type TimelineComment = TimelineEntryBase & {
2024
+ /** The artifacts for the comment. */
2025
+ artifacts?: ArtifactSummary[];
2026
+ /**
2027
+ * The comment's body. If the comment has been deleted, then no body
2028
+ * will appear in the response.
2029
+ */
2030
+ body?: string;
2031
+ /** The type of the body to use for the comment. */
2032
+ body_type?: TimelineCommentBodyType;
2033
+ /** Snap Kit Body of the comment. */
2034
+ snap_kit_body?: TimelineSnapKitBody;
2035
+ };
2036
+ /** The type of the body to use for the comment. */
2037
+ export declare enum TimelineCommentBodyType {
2038
+ SnapKit = "snap_kit",
2039
+ Text = "text"
2040
+ }
2041
+ /** Describes collections of timeline entries. */
2042
+ export declare enum TimelineEntriesCollection {
2043
+ Discussions = "discussions",
2044
+ Events = "events"
2045
+ }
2046
+ /**
2047
+ * timeline-entries-create-request
2048
+ * The request to create a timeline entry for an object.
2049
+ */
2050
+ export type TimelineEntriesCreateRequest = TimelineEntriesCreateRequestTimelineComment & {
2051
+ /**
2052
+ * The collection(s) that the entry belongs to, otherwise if not
2053
+ * provided, then the entry's default collection is used.
2054
+ */
2055
+ collections?: TimelineEntriesCollection[];
2056
+ /**
2057
+ * If set, then the entry is ephemeral and will be deleted after the
2058
+ * provided time. The minimum value should be at least a minute more
2059
+ * than the current timestamp.
2060
+ * @format date-time
2061
+ */
2062
+ expires_at?: string;
2063
+ /**
2064
+ * The ID of the object to create the timeline entry for.
2065
+ * @example "don:core:<partition>:devo/<dev-org-id>:<part-type>/<part-id>"
2066
+ */
2067
+ object: string;
2068
+ /**
2069
+ * If the visibility of the entry is private, this specifies the users
2070
+ * that the entry is private to. Note the creator is always implicitly
2071
+ * included in this list.
2072
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:devu/<dev-user-id>"]
2073
+ */
2074
+ private_to?: string[];
2075
+ type: TimelineEntriesCreateRequestType;
2076
+ /**
2077
+ * The visibility of the entry. If 'private', then the entry is only
2078
+ * visible to the creator, 'internal' is visible with the Dev
2079
+ * organization, 'external' is visible to the Dev organzation and Rev
2080
+ * users, and 'public' is visible to all. If not set, then the default
2081
+ * visibility is 'external'.
2082
+ */
2083
+ visibility?: TimelineEntryVisibility;
2084
+ };
2085
+ /** timeline-entries-create-request-timeline-comment */
2086
+ export interface TimelineEntriesCreateRequestTimelineComment {
2087
+ /**
2088
+ * The IDs of the artifacts attached to the comment.
2089
+ * @example ["don:core:<partition>:devo/<dev-org-id>:artifact/<artifact-id>"]
2090
+ */
2091
+ artifacts?: string[];
2092
+ /** The comment's body. */
2093
+ body?: string;
2094
+ /** The type of the body to use for the comment. */
2095
+ body_type?: TimelineCommentBodyType;
2096
+ /** Snap Kit Body of the comment. */
2097
+ snap_kit_body?: TimelineSnapKitBody;
2098
+ }
2099
+ export declare enum TimelineEntriesCreateRequestType {
2100
+ TimelineComment = "timeline_comment"
2101
+ }
2102
+ /**
2103
+ * timeline-entries-create-response
2104
+ * The response to creating a timeline entry for an object.
2105
+ */
2106
+ export interface TimelineEntriesCreateResponse {
2107
+ timeline_entry: TimelineEntry;
2108
+ }
2109
+ /**
2110
+ * timeline-entries-list-response
2111
+ * The response to listing timeline entries for an object.
2112
+ */
2113
+ export interface TimelineEntriesListResponse {
2114
+ /**
2115
+ * The cursor used to iterate subsequent results in accordance to the
2116
+ * sort order. If not set, then no later elements exist.
2117
+ */
2118
+ next_cursor?: string;
2119
+ /**
2120
+ * The cursor used to iterate preceding results in accordance to the
2121
+ * sort order. If not set, then no prior elements exist.
2122
+ */
2123
+ prev_cursor?: string;
2124
+ /** The timeline entries for the object. */
2125
+ timeline_entries: TimelineEntry[];
2126
+ }
2127
+ /** timeline-entry */
2128
+ export type TimelineEntry = TimelineComment & {
2129
+ type: TimelineEntryType;
2130
+ };
2131
+ /** timeline-entry-base */
2132
+ export type TimelineEntryBase = AtomBase;
2133
+ export declare enum TimelineEntryType {
2134
+ TimelineComment = "timeline_comment"
2135
+ }
2136
+ /**
2137
+ * The visibility of the entry. If 'private', then the entry is only
2138
+ * visible to the creator, 'internal' is visible with the Dev
2139
+ * organization, 'external' is visible to the Dev organzation and Rev
2140
+ * users, and 'public' is visible to all. If not set, then the default
2141
+ * visibility is 'external'.
2142
+ */
2143
+ export declare enum TimelineEntryVisibility {
2144
+ External = "external",
2145
+ Internal = "internal",
2146
+ Private = "private",
2147
+ Public = "public"
2148
+ }
2149
+ /**
2150
+ * timeline-snap-kit-body
2151
+ * Snap Kit Body of the comment.
2152
+ */
2153
+ export interface TimelineSnapKitBody {
2154
+ /** The JSON body of the SnapKit. */
2155
+ body?: object;
2156
+ /**
2157
+ * The name of an action defined in the SnapIn. The combination of
2158
+ * snap_in_id and snap_in_action_name uniquely identifies the
2159
+ * interaction object which is to be called when actions on a snapkit
2160
+ * element is taken.
2161
+ */
2162
+ snap_in_action_name?: string;
2163
+ /** ID of the snap-in which created the SnapKit. */
2164
+ snap_in_id?: string;
2165
+ }
2166
+ /**
2167
+ * unlink-rev-user-from-rev-org-request
2168
+ * A request to unlink a rev user from a rev org.
2169
+ */
2170
+ export interface UnlinkRevUserFromRevOrgRequest {
2171
+ /**
2172
+ * The don of the rev org to unlink the rev user from.
2173
+ * @example "don:identity:<partition>:devo/<dev-org-id>:revo/<rev-org-id>"
2174
+ */
2175
+ rev_org_don: string;
2176
+ /** The don of the rev user to unlink. */
2177
+ user_don: string;
2178
+ }
2179
+ /**
2180
+ * unlink-rev-user-from-rev-org-response
2181
+ * The response to unlink a rev user from a rev org.
2182
+ */
2183
+ export interface UnlinkRevUserFromRevOrgResponse {
2184
+ rev_user: RevUser;
2185
+ }
2186
+ /** user-base */
2187
+ export type UserBase = AtomBase & {
2188
+ /** The user's display name. The name is non-unique and mutable. */
2189
+ display_name?: string;
2190
+ display_picture?: ArtifactSummary;
2191
+ /** Email address of the user. */
2192
+ email?: string;
2193
+ /** Full name of the user. */
2194
+ full_name?: string;
2195
+ /** Phone numbers of the user. */
2196
+ phone_numbers?: string[];
2197
+ /** State of the user. */
2198
+ state?: UserState;
2199
+ };
2200
+ /** user-base-summary */
2201
+ export type UserBaseSummary = AtomBaseSummary & {
2202
+ /** The user's display name. The name is non-unique and mutable. */
2203
+ display_name?: string;
2204
+ display_picture?: ArtifactSummary;
2205
+ /** Email address of the user. */
2206
+ email?: string;
2207
+ /** Full name of the user. */
2208
+ full_name?: string;
2209
+ /** State of the user. */
2210
+ state?: UserState;
2211
+ };
2212
+ /** State of the user. */
2213
+ export declare enum UserState {
2214
+ Active = "active",
2215
+ Deactivated = "deactivated",
2216
+ Locked = "locked",
2217
+ Shadow = "shadow",
2218
+ Unassigned = "unassigned"
2219
+ }
2220
+ /** user-summary */
2221
+ export type UserSummary = (DevUserSummary | RevUserSummary | SysUserSummary) & {
2222
+ type: UserType;
2223
+ };
2224
+ export declare enum UserType {
2225
+ DevUser = "dev_user",
2226
+ RevUser = "rev_user",
2227
+ SysUser = "sys_user"
2228
+ }
2229
+ /** work */
2230
+ export type Work = (Issue | Opportunity | Ticket) & {
2231
+ type: WorkType;
2232
+ };
2233
+ /** work-base */
2234
+ export type WorkBase = AtomBase & {
2235
+ applies_to_part?: PartSummary;
2236
+ /** The artifacts attached to the work item. */
2237
+ artifacts?: ArtifactSummary[];
2238
+ /** Body of the work object. */
2239
+ body?: string;
2240
+ /**
2241
+ * Custom schema fragments.
2242
+ * @example ["don:core:<partition>:devo/<dev-org-id>:custom_type_fragment/<custom-type-fragment-id>"]
2243
+ */
2244
+ custom_schema_fragments?: string[];
2245
+ /** The users that own the work. */
2246
+ owned_by: UserSummary[];
2247
+ /** Users that reported the work. */
2248
+ reported_by?: UserSummary[];
2249
+ /** Describes the current stage of a work item. */
2250
+ stage?: Stage;
2251
+ /**
2252
+ * Stock schema fragment.
2253
+ * @example "don:core:<partition>:devo/<dev-org-id>:custom_type_fragment/<custom-type-fragment-id>"
2254
+ */
2255
+ stock_schema_fragment?: string;
2256
+ /** Tags associated with the object. */
2257
+ tags?: TagWithValue[];
2258
+ /**
2259
+ * Timestamp when the work is expected to be complete.
2260
+ * @format date-time
2261
+ */
2262
+ target_close_date?: string;
2263
+ /** Title of the work object. */
2264
+ title: string;
2265
+ };
2266
+ /** work-base-summary */
2267
+ export type WorkBaseSummary = AtomBaseSummary & {
2268
+ /** Title of the work object. */
2269
+ title: string;
2270
+ };
2271
+ export declare enum WorkType {
2272
+ Issue = "issue",
2273
+ Opportunity = "opportunity",
2274
+ Ticket = "ticket"
2275
+ }
2276
+ /** works-create-request */
2277
+ export type WorksCreateRequest = (WorksCreateRequestIssue | WorksCreateRequestOpportunity | WorksCreateRequestTask | WorksCreateRequestTicket) & {
2278
+ /**
2279
+ * The [part](https://devrev.ai/docs/product/parts) that the work
2280
+ * applies to. Specifying a part is required when creating tickets and
2281
+ * issues.
2282
+ * @example "don:core:<partition>:devo/<dev-org-id>:<part-type>/<part-id>"
2283
+ */
2284
+ applies_to_part: string;
2285
+ /**
2286
+ * The IDs of the artifacts to associate with the work item.
2287
+ * @example ["don:core:<partition>:devo/<dev-org-id>:artifact/<artifact-id>"]
2288
+ */
2289
+ artifacts?: string[];
2290
+ /** Body of the work object. */
2291
+ body?: string;
2292
+ /**
2293
+ * The custom schema fragments to use.
2294
+ * @example ["don:core:<partition>:devo/<dev-org-id>:custom_type_fragment/<custom-type-fragment-id>"]
2295
+ */
2296
+ custom_schema_fragments?: string[];
2297
+ /**
2298
+ * The users that own the work.
2299
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:devu/<dev-user-id>"]
2300
+ */
2301
+ owned_by: string[];
2302
+ /**
2303
+ * The users that reported the work.
2304
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:devu/<dev-user-id>"]
2305
+ */
2306
+ reported_by?: string[];
2307
+ /** Sets an object's initial stage. */
2308
+ stage?: StageInit;
2309
+ /** Tags associated with the work item. */
2310
+ tags?: SetTagWithValue[];
2311
+ /**
2312
+ * Timestamp for when the work is expected to be complete.
2313
+ * @format date-time
2314
+ */
2315
+ target_close_date?: string;
2316
+ /** Title of the work object. */
2317
+ title: string;
2318
+ type: WorkType;
2319
+ };
2320
+ /** works-create-request-issue */
2321
+ export interface WorksCreateRequestIssue {
2322
+ /** Priority of the work based upon impact and criticality. */
2323
+ priority?: IssuePriority;
2324
+ /** The sprint that the issue belongs to. */
2325
+ sprint?: string;
2326
+ }
2327
+ /** works-create-request-opportunity */
2328
+ export interface WorksCreateRequestOpportunity {
2329
+ /**
2330
+ * The ID of the account that the opportunity is associated with.
2331
+ * @example "don:core:<partition>:devo/<dev-org-id>:account/<account-id>"
2332
+ */
2333
+ account: string;
2334
+ /**
2335
+ * Total opportunity amount.
2336
+ * @format double
2337
+ */
2338
+ amount?: number;
2339
+ /** Contacts involved in the opportunity. */
2340
+ contacts?: string[];
2341
+ /**
2342
+ * Budget of the customer.
2343
+ * @format double
2344
+ */
2345
+ customer_budget?: number;
2346
+ /**
2347
+ * The probability of winning the deal, lies between 0.0 and 1.0.
2348
+ * @format double
2349
+ */
2350
+ probability?: number;
2351
+ }
2352
+ /** works-create-request-task */
2353
+ export interface WorksCreateRequestTask {
2354
+ /** Whether the task is embedded in the work. */
2355
+ embedded?: boolean;
2356
+ /** Priority of the work based upon impact and criticality. */
2357
+ priority?: TaskPriority;
2358
+ /**
2359
+ * Timestamp when the task was started.
2360
+ * @format date-time
2361
+ */
2362
+ start_date?: string;
2363
+ }
2364
+ /** works-create-request-ticket */
2365
+ export interface WorksCreateRequestTicket {
2366
+ /** The group that the ticket is associated with. */
2367
+ group?: string;
2368
+ /** Whether the ticket is spam. */
2369
+ is_spam?: boolean;
2370
+ /**
2371
+ * The Rev organization that the ticket is associated with.
2372
+ * @example "don:identity:<partition>:devo/<dev-org-id>:revo/<rev-org-id>"
2373
+ */
2374
+ rev_org?: string;
2375
+ /** Severity of the ticket. */
2376
+ severity?: TicketSeverity;
2377
+ /** The source channel of the ticket. */
2378
+ source_channel?: string;
2379
+ }
2380
+ /** works-create-response */
2381
+ export interface WorksCreateResponse {
2382
+ work: Work;
2383
+ }
2384
+ /** works-delete-request */
2385
+ export interface WorksDeleteRequest {
2386
+ /**
2387
+ * The work's ID.
2388
+ * @example "don:core:<partition>:devo/<dev-org-id>:<work-type>/<work-id>"
2389
+ */
2390
+ id: string;
2391
+ }
2392
+ /** works-delete-response */
2393
+ export type WorksDeleteResponse = object;
2394
+ /** works-export-response */
2395
+ export interface WorksExportResponse {
2396
+ /** The resulting collection of work items. */
2397
+ works: Work[];
2398
+ }
2399
+ /** works-get-response */
2400
+ export interface WorksGetResponse {
2401
+ work: Work;
2402
+ }
2403
+ /** works-list-response */
2404
+ export interface WorksListResponse {
2405
+ /**
2406
+ * The cursor used to iterate subsequent results in accordance to the
2407
+ * sort order. If not set, then no later elements exist.
2408
+ */
2409
+ next_cursor?: string;
2410
+ /**
2411
+ * The cursor used to iterate preceding results in accordance to the
2412
+ * sort order. If not set, then no prior elements exist.
2413
+ */
2414
+ prev_cursor?: string;
2415
+ /** The list of works. */
2416
+ works: Work[];
2417
+ }
2418
+ /** works-update-request */
2419
+ export type WorksUpdateRequest = (WorksUpdateRequestIssue | WorksUpdateRequestOpportunity | WorksUpdateRequestTask | WorksUpdateRequestTicket) & {
2420
+ /**
2421
+ * Updates the part that the work applies to.
2422
+ * @example "don:core:<partition>:devo/<dev-org-id>:<part-type>/<part-id>"
2423
+ */
2424
+ applies_to_part?: string;
2425
+ artifacts?: WorksUpdateRequestArtifactIds;
2426
+ /** Updated body of the work object, or unchanged if not provided. */
2427
+ body?: string;
2428
+ /**
2429
+ * The custom schema fragments to use.
2430
+ * @example ["don:core:<partition>:devo/<dev-org-id>:custom_type_fragment/<custom-type-fragment-id>"]
2431
+ */
2432
+ custom_schema_fragments?: string[];
2433
+ /**
2434
+ * The work's ID.
2435
+ * @example "don:core:<partition>:devo/<dev-org-id>:<work-type>/<work-id>"
2436
+ */
2437
+ id: string;
2438
+ owned_by?: WorksUpdateRequestOwnedBy;
2439
+ reported_by?: WorksUpdateRequestReportedBy;
2440
+ /** Updates an object's stage. */
2441
+ stage?: StageUpdate;
2442
+ tags?: WorksUpdateRequestTags;
2443
+ /**
2444
+ * Updates the timestamp for when the work is expected to be complete.
2445
+ * @format date-time
2446
+ */
2447
+ target_close_date?: string;
2448
+ /** Updated title of the work object, or unchanged if not provided. */
2449
+ title?: string;
2450
+ type: WorkType;
2451
+ };
2452
+ /** works-update-request-artifact-ids */
2453
+ export interface WorksUpdateRequestArtifactIds {
2454
+ /**
2455
+ * Sets the IDs to the provided artifact IDs.
2456
+ * @example ["don:core:<partition>:devo/<dev-org-id>:artifact/<artifact-id>"]
2457
+ */
2458
+ set?: string[];
2459
+ }
2460
+ /** works-update-request-issue */
2461
+ export interface WorksUpdateRequestIssue {
2462
+ /** Priority of the work based upon impact and criticality. */
2463
+ priority?: IssuePriority;
2464
+ /** Updates the sprint that the issue belongs to. */
2465
+ sprint?: string | null;
2466
+ }
2467
+ /** works-update-request-opportunity */
2468
+ export interface WorksUpdateRequestOpportunity {
2469
+ /**
2470
+ * Updates the account that the opportunity is associated with.
2471
+ * @example "don:core:<partition>:devo/<dev-org-id>:account/<account-id>"
2472
+ */
2473
+ account?: string;
2474
+ /**
2475
+ * Updates the total opportunity amount.
2476
+ * @format double
2477
+ */
2478
+ amount?: number | null;
2479
+ contacts?: WorksUpdateRequestOpportunityContacts;
2480
+ /**
2481
+ * Updates the customer budget.
2482
+ * @format double
2483
+ */
2484
+ customer_budget?: number | null;
2485
+ /**
2486
+ * Updates the probability of winning the deal, lies between 0.0 and
2487
+ * 1.0.
2488
+ * @format double
2489
+ */
2490
+ probability?: number | null;
2491
+ }
2492
+ /** works-update-request-opportunity-contacts */
2493
+ export interface WorksUpdateRequestOpportunityContacts {
2494
+ /** Sets the contact IDs to the provided contact IDs. */
2495
+ set: string[];
2496
+ }
2497
+ /** works-update-request-owned-by */
2498
+ export interface WorksUpdateRequestOwnedBy {
2499
+ /**
2500
+ * Sets the owner IDs to the provided user IDs. This must not be
2501
+ * empty.
2502
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:devu/<dev-user-id>"]
2503
+ */
2504
+ set?: string[];
2505
+ }
2506
+ /** works-update-request-reported-by */
2507
+ export interface WorksUpdateRequestReportedBy {
2508
+ /**
2509
+ * Sets the users that reported the work to the provided user IDs.
2510
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:devu/<dev-user-id>"]
2511
+ */
2512
+ set?: string[];
2513
+ }
2514
+ /** works-update-request-tags */
2515
+ export interface WorksUpdateRequestTags {
2516
+ /** Sets the provided tags on the work item. */
2517
+ set?: SetTagWithValue[];
2518
+ }
2519
+ /** works-update-request-task */
2520
+ export interface WorksUpdateRequestTask {
2521
+ /** Whether the task is embedded in the work. */
2522
+ embedded?: boolean;
2523
+ /** Priority of the work based upon impact and criticality. */
2524
+ priority?: TaskPriority;
2525
+ /**
2526
+ * Timestamp when the task was started.
2527
+ * @format date-time
2528
+ */
2529
+ start_date?: string;
2530
+ }
2531
+ /** works-update-request-ticket */
2532
+ export interface WorksUpdateRequestTicket {
2533
+ /** The group that the ticket is associated with. */
2534
+ group?: string;
2535
+ /** Updates whether the ticket is spam. */
2536
+ is_spam?: boolean;
2537
+ /**
2538
+ * Updates the Rev organization that the ticket is associated with.
2539
+ * @example "don:identity:<partition>:devo/<dev-org-id>:revo/<rev-org-id>"
2540
+ */
2541
+ rev_org?: string | null;
2542
+ /** Severity of the ticket. */
2543
+ severity?: TicketSeverity;
2544
+ }
2545
+ /** works-update-response */
2546
+ export interface WorksUpdateResponse {
2547
+ work: Work;
2548
+ }
2549
+ import { AxiosInstance, AxiosRequestConfig, AxiosResponse, ResponseType } from "axios";
2550
+ export type QueryParamsType = Record<string | number, any>;
2551
+ export interface FullRequestParams extends Omit<AxiosRequestConfig, "data" | "params" | "url" | "responseType"> {
2552
+ /** set parameter to `true` for call `securityWorker` for this request */
2553
+ secure?: boolean;
2554
+ /** request path */
2555
+ path: string;
2556
+ /** content type of request body */
2557
+ type?: ContentType;
2558
+ /** query params */
2559
+ query?: QueryParamsType;
2560
+ /** format of response (i.e. response.json() -> format: "json") */
2561
+ format?: ResponseType;
2562
+ /** request body */
2563
+ body?: unknown;
2564
+ }
2565
+ export type RequestParams = Omit<FullRequestParams, "body" | "method" | "query" | "path">;
2566
+ export interface ApiConfig<SecurityDataType = unknown> extends Omit<AxiosRequestConfig, "data" | "cancelToken"> {
2567
+ securityWorker?: (securityData: SecurityDataType | null) => Promise<AxiosRequestConfig | void> | AxiosRequestConfig | void;
2568
+ secure?: boolean;
2569
+ format?: ResponseType;
2570
+ }
2571
+ export declare enum ContentType {
2572
+ Json = "application/json",
2573
+ FormData = "multipart/form-data",
2574
+ UrlEncoded = "application/x-www-form-urlencoded",
2575
+ Text = "text/plain"
2576
+ }
2577
+ export declare class HttpClient<SecurityDataType = unknown> {
2578
+ instance: AxiosInstance;
2579
+ private securityData;
2580
+ private securityWorker?;
2581
+ private secure?;
2582
+ private format?;
2583
+ constructor({ securityWorker, secure, format, ...axiosConfig }?: ApiConfig<SecurityDataType>);
2584
+ setSecurityData: (data: SecurityDataType | null) => void;
2585
+ protected mergeRequestParams(params1: AxiosRequestConfig, params2?: AxiosRequestConfig): AxiosRequestConfig;
2586
+ protected stringifyFormItem(formItem: unknown): string;
2587
+ protected createFormData(input: Record<string, unknown>): FormData;
2588
+ request: <T = any, _E = any>({ secure, path, type, query, format, body, ...params }: FullRequestParams) => Promise<AxiosResponse<T, any>>;
2589
+ }
2590
+ /**
2591
+ * @title DevRev Beta REST API
2592
+ * @version BETA
2593
+ * @baseUrl {protocol}://{hostname}
2594
+ *
2595
+ * DevRev's BETA REST API Specification.
2596
+ */
2597
+ export declare class Api<SecurityDataType extends unknown> extends HttpClient<SecurityDataType> {
2598
+ /**
2599
+ * @description Creates an account, which is a record representing a customer or an organization.
2600
+ *
2601
+ * @tags accounts
2602
+ * @name AccountsCreate
2603
+ * @request POST:/accounts.create
2604
+ * @secure
2605
+ */
2606
+ accountsCreate: (data: AccountsCreateRequest, params?: RequestParams) => Promise<AxiosResponse<AccountsCreateResponse, any>>;
2607
+ /**
2608
+ * @description Deletes an account.
2609
+ *
2610
+ * @tags accounts
2611
+ * @name AccountsDelete
2612
+ * @request POST:/accounts.delete
2613
+ * @secure
2614
+ */
2615
+ accountsDelete: (data: AccountsDeleteRequest, params?: RequestParams) => Promise<AxiosResponse<object, any>>;
2616
+ /**
2617
+ * @description Exports a collection of accounts.
2618
+ *
2619
+ * @tags accounts
2620
+ * @name AccountsExport
2621
+ * @request GET:/accounts.export
2622
+ * @secure
2623
+ */
2624
+ accountsExport: (query?: {
2625
+ /** Filters for accounts created by the specified user(s). */
2626
+ created_by?: string[];
2627
+ /**
2628
+ * Filters for objects created after the provided timestamp (inclusive).
2629
+ * @format date-time
2630
+ */
2631
+ "created_date.after"?: string;
2632
+ /**
2633
+ * Filters for objects created before the provided timestamp
2634
+ * (inclusive).
2635
+ * @format date-time
2636
+ */
2637
+ "created_date.before"?: string;
2638
+ /** Array of references of accounts to be filtered. */
2639
+ external_refs?: string[];
2640
+ /**
2641
+ * The number of accounts to return. The default is '50'.
2642
+ * @format int32
2643
+ * @min 1
2644
+ * @max 500
2645
+ */
2646
+ first?: number;
2647
+ /**
2648
+ * Filters for objects created after the provided timestamp (inclusive).
2649
+ * @format date-time
2650
+ */
2651
+ "modified_date.after"?: string;
2652
+ /**
2653
+ * Filters for objects created before the provided timestamp
2654
+ * (inclusive).
2655
+ * @format date-time
2656
+ */
2657
+ "modified_date.before"?: string;
2658
+ /** Fields to sort the accounts by and the direction to sort them in. */
2659
+ sort_by?: string[];
2660
+ }, params?: RequestParams) => Promise<AxiosResponse<AccountsExportResponse, any>>;
2661
+ /**
2662
+ * @description Retrieves an account's information.
2663
+ *
2664
+ * @tags accounts
2665
+ * @name AccountsGet
2666
+ * @request GET:/accounts.get
2667
+ * @secure
2668
+ */
2669
+ accountsGet: (query: {
2670
+ /**
2671
+ * The ID of the account to be retrieved.
2672
+ * @example "don:core:<partition>:devo/<dev-org-id>:account/<account-id>"
2673
+ */
2674
+ id: string;
2675
+ }, params?: RequestParams) => Promise<AxiosResponse<AccountsGetResponse, any>>;
2676
+ /**
2677
+ * @description Gets a list of accounts.
2678
+ *
2679
+ * @tags accounts
2680
+ * @name AccountsList
2681
+ * @request GET:/accounts.list
2682
+ * @secure
2683
+ */
2684
+ accountsList: (query?: {
2685
+ /** Filters for accounts created by the specified user(s). */
2686
+ created_by?: string[];
2687
+ /**
2688
+ * Filters for objects created after the provided timestamp (inclusive).
2689
+ * @format date-time
2690
+ */
2691
+ "created_date.after"?: string;
2692
+ /**
2693
+ * Filters for objects created before the provided timestamp
2694
+ * (inclusive).
2695
+ * @format date-time
2696
+ */
2697
+ "created_date.before"?: string;
2698
+ /**
2699
+ * The cursor to resume iteration from. If not provided, then iteration
2700
+ * starts from the beginning.
2701
+ */
2702
+ cursor?: string;
2703
+ /** Array of references of accounts to be filtered. */
2704
+ external_refs?: string[];
2705
+ /**
2706
+ * The maximum number of accounts to return per page. The default is
2707
+ * '50'.
2708
+ * @format int32
2709
+ */
2710
+ limit?: number;
2711
+ /**
2712
+ * The iteration mode to use, otherwise if not set, then "after" is
2713
+ * used.
2714
+ */
2715
+ mode?: ListMode;
2716
+ /**
2717
+ * Filters for objects created after the provided timestamp (inclusive).
2718
+ * @format date-time
2719
+ */
2720
+ "modified_date.after"?: string;
2721
+ /**
2722
+ * Filters for objects created before the provided timestamp
2723
+ * (inclusive).
2724
+ * @format date-time
2725
+ */
2726
+ "modified_date.before"?: string;
2727
+ /** Fields to sort the accounts by and the direction to sort them in. */
2728
+ sort_by?: string[];
2729
+ }, params?: RequestParams) => Promise<AxiosResponse<AccountsListResponse, any>>;
2730
+ /**
2731
+ * @description Updates an account's information.
2732
+ *
2733
+ * @tags accounts
2734
+ * @name AccountsUpdate
2735
+ * @request POST:/accounts.update
2736
+ * @secure
2737
+ */
2738
+ accountsUpdate: (data: AccountsUpdateRequest, params?: RequestParams) => Promise<AxiosResponse<AccountsUpdateResponse, any>>;
2739
+ /**
2740
+ * @description Creates a conversation.
2741
+ *
2742
+ * @tags conversations
2743
+ * @name ConversationsCreate
2744
+ * @request POST:/conversations.create
2745
+ * @secure
2746
+ */
2747
+ conversationsCreate: (data: ConversationsCreateRequest, params?: RequestParams) => Promise<AxiosResponse<ConversationsCreateResponse, any>>;
2748
+ /**
2749
+ * @description Deletes the requested conversation.
2750
+ *
2751
+ * @tags conversations
2752
+ * @name ConversationsDelete
2753
+ * @request POST:/conversations.delete
2754
+ * @secure
2755
+ */
2756
+ conversationsDelete: (data: ConversationsDeleteRequest, params?: RequestParams) => Promise<AxiosResponse<object, any>>;
2757
+ /**
2758
+ * @description Exports a collection of conversation items.
2759
+ *
2760
+ * @tags conversations
2761
+ * @name ConversationsExport
2762
+ * @request GET:/conversations.export
2763
+ * @secure
2764
+ */
2765
+ conversationsExport: (query?: {
2766
+ /**
2767
+ * Filters for conversations belonging to any of the provided parts.
2768
+ * @example ["don:core:<partition>:devo/<dev-org-id>:<part-type>/<part-id>"]
2769
+ */
2770
+ applies_to_parts?: string[];
2771
+ /**
2772
+ * The number of conversation items to return. The default is '50', the
2773
+ * maximum is '5000'.
2774
+ * @format int32
2775
+ */
2776
+ first?: number;
2777
+ /** Filters for conversation that belong to the given groups. */
2778
+ group?: string[];
2779
+ /** Filters for conversations that are spam. */
2780
+ is_spam?: boolean;
2781
+ /**
2782
+ * Filters for conversations where these users are participants.
2783
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:devu/<dev-user-id>"]
2784
+ */
2785
+ members?: string[];
2786
+ /**
2787
+ * Filters for conversations owned by any of these users.
2788
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:devu/<dev-user-id>"]
2789
+ */
2790
+ owned_by?: string[];
2791
+ /**
2792
+ * Filters for conversations that are associated with any of the
2793
+ * provided Rev organizations.
2794
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:revo/<rev-org-id>"]
2795
+ */
2796
+ rev_org?: string[];
2797
+ /** Filters for conversations with any of the provided source channels. */
2798
+ source_channels?: string[];
2799
+ /** Filters for records in the provided stage(s). */
2800
+ "stage.name"?: string[];
2801
+ /**
2802
+ * Filters for conversations with any of the provided tags.
2803
+ * @example ["don:core:<partition>:devo/<dev-org-id>:tag/<tag-id>"]
2804
+ */
2805
+ tags?: string[];
2806
+ }, params?: RequestParams) => Promise<AxiosResponse<ConversationsExportResponse, any>>;
2807
+ /**
2808
+ * @description Gets the requested conversation's information.
2809
+ *
2810
+ * @tags conversations
2811
+ * @name ConversationsGet
2812
+ * @request GET:/conversations.get
2813
+ * @secure
2814
+ */
2815
+ conversationsGet: (query: {
2816
+ /** The requested conversation's ID. */
2817
+ id: string;
2818
+ }, params?: RequestParams) => Promise<AxiosResponse<ConversationsGetResponse, any>>;
2819
+ /**
2820
+ * @description Lists the available conversations.
2821
+ *
2822
+ * @tags conversations
2823
+ * @name ConversationsList
2824
+ * @request GET:/conversations.list
2825
+ * @secure
2826
+ */
2827
+ conversationsList: (query?: {
2828
+ /**
2829
+ * Filters for conversations belonging to any of the provided parts.
2830
+ * @example ["don:core:<partition>:devo/<dev-org-id>:<part-type>/<part-id>"]
2831
+ */
2832
+ applies_to_parts?: string[];
2833
+ /**
2834
+ * The cursor to resume iteration from. If not provided, then iteration
2835
+ * starts from the beginning.
2836
+ */
2837
+ cursor?: string;
2838
+ /** Filters for conversation that belong to the given groups. */
2839
+ group?: string[];
2840
+ /** Filters for conversations that are spam. */
2841
+ is_spam?: boolean;
2842
+ /**
2843
+ * The maximum number of conversations to return. The default is '50'.
2844
+ * @format int32
2845
+ */
2846
+ limit?: number;
2847
+ /**
2848
+ * Filters for conversations where these users are participants.
2849
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:devu/<dev-user-id>"]
2850
+ */
2851
+ members?: string[];
2852
+ /**
2853
+ * The iteration mode to use, otherwise if not set, then "after" is
2854
+ * used.
2855
+ */
2856
+ mode?: ListMode;
2857
+ /**
2858
+ * Filters for conversations owned by any of these users.
2859
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:devu/<dev-user-id>"]
2860
+ */
2861
+ owned_by?: string[];
2862
+ /**
2863
+ * Filters for conversations that are associated with any of the
2864
+ * provided Rev organizations.
2865
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:revo/<rev-org-id>"]
2866
+ */
2867
+ rev_org?: string[];
2868
+ /** Filters for conversations with any of the provided source channels. */
2869
+ source_channels?: string[];
2870
+ /** Filters for records in the provided stage(s). */
2871
+ "stage.name"?: string[];
2872
+ /**
2873
+ * Filters for conversations with any of the provided tags.
2874
+ * @example ["don:core:<partition>:devo/<dev-org-id>:tag/<tag-id>"]
2875
+ */
2876
+ tags?: string[];
2877
+ }, params?: RequestParams) => Promise<AxiosResponse<ConversationsListResponse, any>>;
2878
+ /**
2879
+ * @description Updates the requested conversation.
2880
+ *
2881
+ * @tags conversations
2882
+ * @name ConversationsUpdate
2883
+ * @request POST:/conversations.update
2884
+ * @secure
2885
+ */
2886
+ conversationsUpdate: (data: ConversationsUpdateRequest, params?: RequestParams) => Promise<AxiosResponse<ConversationsUpdateResponse, any>>;
2887
+ /**
2888
+ * @description Counts the engagement records.
2889
+ *
2890
+ * @tags engagements
2891
+ * @name EngagementsCount
2892
+ * @request GET:/engagements.count
2893
+ * @secure
2894
+ */
2895
+ engagementsCount: (query?: {
2896
+ /**
2897
+ * Filters for engagements with the provided parent.
2898
+ * @example ["don:core:<partition>:devo/<dev-org-id>:account/<account-id>"]
2899
+ */
2900
+ parent?: string[];
2901
+ }, params?: RequestParams) => Promise<AxiosResponse<EngagementsCountResponse, any>>;
2902
+ /**
2903
+ * @description Creates a new engagement record.
2904
+ *
2905
+ * @tags engagements
2906
+ * @name EngagementsCreate
2907
+ * @request POST:/engagements.create
2908
+ * @secure
2909
+ */
2910
+ engagementsCreate: (data: EngagementsCreateRequest, params?: RequestParams) => Promise<AxiosResponse<EngagementsCreateResponse, any>>;
2911
+ /**
2912
+ * @description Deletes the engagement record.
2913
+ *
2914
+ * @tags engagements
2915
+ * @name EngagementsDelete
2916
+ * @request POST:/engagements.delete
2917
+ * @secure
2918
+ */
2919
+ engagementsDelete: (data: EngagementsDeleteRequest, params?: RequestParams) => Promise<AxiosResponse<object, any>>;
2920
+ /**
2921
+ * @description Gets the engagement record.
2922
+ *
2923
+ * @tags engagements
2924
+ * @name EngagementsGet
2925
+ * @request GET:/engagements.get
2926
+ * @secure
2927
+ */
2928
+ engagementsGet: (query: {
2929
+ /** The engagement ID. */
2930
+ id: string;
2931
+ }, params?: RequestParams) => Promise<AxiosResponse<EngagementsGetResponse, any>>;
2932
+ /**
2933
+ * @description Lists the engagement records.
2934
+ *
2935
+ * @tags engagements
2936
+ * @name EngagementsList
2937
+ * @request GET:/engagements.list
2938
+ * @secure
2939
+ */
2940
+ engagementsList: (query?: {
2941
+ /**
2942
+ * The cursor to resume iteration from. If not provided, then iteration
2943
+ * starts from the beginning.
2944
+ */
2945
+ cursor?: string;
2946
+ /**
2947
+ * The maximum number of engagements to return.
2948
+ * @format int32
2949
+ */
2950
+ limit?: number;
2951
+ /**
2952
+ * The iteration mode to use, otherwise if not set, then "after" is
2953
+ * used.
2954
+ */
2955
+ mode?: ListMode;
2956
+ /**
2957
+ * Filters for engagements with the provided parent.
2958
+ * @example ["don:core:<partition>:devo/<dev-org-id>:account/<account-id>"]
2959
+ */
2960
+ parent?: string[];
2961
+ /** Fields to sort the engagements by and the direction to sort them. */
2962
+ sort_by?: string[];
2963
+ }, params?: RequestParams) => Promise<AxiosResponse<EngagementsListResponse, any>>;
2964
+ /**
2965
+ * @description Updates the engagement record.
2966
+ *
2967
+ * @tags engagements
2968
+ * @name EngagementsUpdate
2969
+ * @request POST:/engagements.update
2970
+ * @secure
2971
+ */
2972
+ engagementsUpdate: (data: EngagementsUpdateRequest, params?: RequestParams) => Promise<AxiosResponse<EngagementsUpdateResponse, any>>;
2973
+ /**
2974
+ * @description Schedules an event to be published to the specified event source.
2975
+ *
2976
+ * @tags event-source
2977
+ * @name EventSourcesScheduleEvent
2978
+ * @request POST:/event-sources.schedule
2979
+ * @secure
2980
+ */
2981
+ eventSourcesScheduleEvent: (data: EventSourcesScheduleEventRequest, params?: RequestParams) => Promise<AxiosResponse<EventSourcesScheduleEventResponse, any>>;
2982
+ /**
2983
+ * @description Deletes an event scheduled for the specified event source.
2984
+ *
2985
+ * @tags event-source
2986
+ * @name EventSourcesDeleteScheduledEvent
2987
+ * @request POST:/event-sources.unschedule
2988
+ * @secure
2989
+ */
2990
+ eventSourcesDeleteScheduledEvent: (data: EventSourcesDeleteScheduledEventRequest, params?: RequestParams) => Promise<AxiosResponse<void, any>>;
2991
+ /**
2992
+ * @description Creates a link between two objects to indicate a relationship.
2993
+ *
2994
+ * @tags links
2995
+ * @name LinksCreate
2996
+ * @request POST:/links.create
2997
+ * @secure
2998
+ */
2999
+ linksCreate: (data: LinksCreateRequest, params?: RequestParams) => Promise<AxiosResponse<LinksCreateResponse, any>>;
3000
+ /**
3001
+ * @description Deletes a link.
3002
+ *
3003
+ * @tags links
3004
+ * @name LinksDelete
3005
+ * @request POST:/links.delete
3006
+ * @secure
3007
+ */
3008
+ linksDelete: (data: LinksDeleteRequest, params?: RequestParams) => Promise<AxiosResponse<object, any>>;
3009
+ /**
3010
+ * @description Gets the requested link's information.
3011
+ *
3012
+ * @tags links
3013
+ * @name LinksGet
3014
+ * @request GET:/links.get
3015
+ * @secure
3016
+ */
3017
+ linksGet: (query: {
3018
+ /** The requested link's ID. */
3019
+ id: string;
3020
+ }, params?: RequestParams) => Promise<AxiosResponse<LinksGetResponse, any>>;
3021
+ /**
3022
+ * @description Lists the available links.
3023
+ *
3024
+ * @tags links
3025
+ * @name LinksList
3026
+ * @request GET:/links.list
3027
+ * @secure
3028
+ */
3029
+ linksList: (query: {
3030
+ /** The ID of the object to list the links for. */
3031
+ object: string;
3032
+ /**
3033
+ * The cursor to resume iteration from. If not provided, then iteration
3034
+ * starts from the beginning.
3035
+ */
3036
+ cursor?: string;
3037
+ /**
3038
+ * The direction of the links to list, otherwise if not present, then
3039
+ * links in both directions (source and target) are included.
3040
+ */
3041
+ direction?: LinksDirection;
3042
+ /**
3043
+ * The maximum number of links to return. If not set, then the default
3044
+ * is '50'.
3045
+ * @format int32
3046
+ */
3047
+ limit?: number;
3048
+ /**
3049
+ * The link type(s) to filter for, otherwise if not present, all link
3050
+ * types are included.
3051
+ */
3052
+ link_type?: LinkType[];
3053
+ /**
3054
+ * The iteration mode to use, otherwise if not set, then "after" is
3055
+ * used.
3056
+ */
3057
+ mode?: ListMode;
3058
+ /**
3059
+ * The link types to filter for, otherwise if not present, all link
3060
+ * types are included.
3061
+ * @deprecated
3062
+ */
3063
+ types?: LinkType[];
3064
+ }, params?: RequestParams) => Promise<AxiosResponse<LinksListResponse, any>>;
3065
+ /**
3066
+ * @description Lists metric definitions matching a filter.
3067
+ *
3068
+ * @tags slas
3069
+ * @name MetricDefinitionsList
3070
+ * @request GET:/metric-definitions.list
3071
+ * @secure
3072
+ */
3073
+ metricDefinitionsList: (query?: {
3074
+ /** The type of objects the metric definition applies to. */
3075
+ applies_to_type?: MetricDefinitionAppliesTo[];
3076
+ /**
3077
+ * The cursor to resume iteration from. If not provided, then iteration
3078
+ * starts from the beginning.
3079
+ */
3080
+ cursor?: string;
3081
+ /**
3082
+ * The maximum number of records to return. The default is '50'.
3083
+ * @format int32
3084
+ */
3085
+ limit?: number;
3086
+ /**
3087
+ * The iteration mode to use, otherwise if not set, then "after" is
3088
+ * used.
3089
+ */
3090
+ mode?: ListMode;
3091
+ /** The type of metric definitions sought. */
3092
+ type?: MetricDefinitionMetricType[];
3093
+ }, params?: RequestParams) => Promise<AxiosResponse<MetricDefinitionsListResponse, any>>;
3094
+ /**
3095
+ * @description Creates a Rev organization in the authenticated user's Dev organization.
3096
+ *
3097
+ * @tags rev-orgs
3098
+ * @name RevOrgsCreate
3099
+ * @request POST:/rev-orgs.create
3100
+ * @secure
3101
+ */
3102
+ revOrgsCreate: (data: RevOrgsCreateRequest, params?: RequestParams) => Promise<AxiosResponse<RevOrgsCreateResponse, any>>;
3103
+ /**
3104
+ * @description Retrieves the Rev organization's information.
3105
+ *
3106
+ * @tags rev-orgs
3107
+ * @name RevOrgsGet
3108
+ * @request GET:/rev-orgs.get
3109
+ * @secure
3110
+ */
3111
+ revOrgsGet: (query: {
3112
+ /**
3113
+ * The ID of the required Rev organization.
3114
+ * @example "don:identity:<partition>:devo/<dev-org-id>:revo/<rev-org-id>"
3115
+ */
3116
+ id: string;
3117
+ }, params?: RequestParams) => Promise<AxiosResponse<RevOrgsGetResponse, any>>;
3118
+ /**
3119
+ * @description Gets the list of Rev organizations' information belonging to the authenticated user's Dev Organization which the user is also authorized to access.
3120
+ *
3121
+ * @tags rev-orgs
3122
+ * @name RevOrgsList
3123
+ * @request GET:/rev-orgs.list
3124
+ * @secure
3125
+ */
3126
+ revOrgsList: (query?: {
3127
+ /** Filters by creator. */
3128
+ created_by?: string[];
3129
+ /**
3130
+ * Filters for objects created after the provided timestamp (inclusive).
3131
+ * @format date-time
3132
+ */
3133
+ "created_date.after"?: string;
3134
+ /**
3135
+ * Filters for objects created before the provided timestamp
3136
+ * (inclusive).
3137
+ * @format date-time
3138
+ */
3139
+ "created_date.before"?: string;
3140
+ /**
3141
+ * The cursor to resume iteration from. If not provided, then iteration
3142
+ * starts from the beginning.
3143
+ */
3144
+ cursor?: string;
3145
+ /**
3146
+ * Filters on custom fields. Input will be of the format
3147
+ * (custom_field_filter=field_name1:val1,val2,val3&custom_field_filter=field_name2:val1,val2).
3148
+ */
3149
+ custom_field_filter?: string[];
3150
+ /** List of external refs to filter Rev organizations for. */
3151
+ external_ref?: string[];
3152
+ /**
3153
+ * The maximum number of Rev organizations to be retrieved per page.
3154
+ * @format int32
3155
+ */
3156
+ limit?: number;
3157
+ /**
3158
+ * The iteration mode to use, otherwise if not set, then "after" is
3159
+ * used.
3160
+ */
3161
+ mode?: ListMode;
3162
+ /**
3163
+ * Filters for objects created after the provided timestamp (inclusive).
3164
+ * @format date-time
3165
+ */
3166
+ "modified_date.after"?: string;
3167
+ /**
3168
+ * Filters for objects created before the provided timestamp
3169
+ * (inclusive).
3170
+ * @format date-time
3171
+ */
3172
+ "modified_date.before"?: string;
3173
+ /**
3174
+ * Fields to sort the Rev organizations by and the direction to sort
3175
+ * them.
3176
+ */
3177
+ sort_by?: string[];
3178
+ }, params?: RequestParams) => Promise<AxiosResponse<RevOrgsListResponse, any>>;
3179
+ /**
3180
+ * @description Updates the Rev organization's information.
3181
+ *
3182
+ * @tags rev-orgs
3183
+ * @name RevOrgsUpdate
3184
+ * @request POST:/rev-orgs.update
3185
+ * @secure
3186
+ */
3187
+ revOrgsUpdate: (data: RevOrgsUpdateRequest, params?: RequestParams) => Promise<AxiosResponse<RevOrgsUpdateResponse, any>>;
3188
+ /**
3189
+ * @description Creates a Rev user for a Rev organization. Rev user can be a customer or a lead of an organization.
3190
+ *
3191
+ * @tags rev-users
3192
+ * @name RevUsersCreate
3193
+ * @request POST:/rev-users.create
3194
+ * @secure
3195
+ */
3196
+ revUsersCreate: (data: RevUsersCreateRequest, params?: RequestParams) => Promise<AxiosResponse<RevUsersCreateResponse, any>>;
3197
+ /**
3198
+ * @description Deletes a Rev user.
3199
+ *
3200
+ * @tags rev-users
3201
+ * @name RevUsersDelete
3202
+ * @request POST:/rev-users.delete
3203
+ * @secure
3204
+ */
3205
+ revUsersDelete: (data: RevUsersDeleteRequest, params?: RequestParams) => Promise<AxiosResponse<object, any>>;
3206
+ /**
3207
+ * @description Returns the Rev user of a Rev organization by its ID.
3208
+ *
3209
+ * @tags rev-users
3210
+ * @name RevUsersGet
3211
+ * @request GET:/rev-users.get
3212
+ * @secure
3213
+ */
3214
+ revUsersGet: (query: {
3215
+ /** The ID of Rev user to be retrieved. */
3216
+ id: string;
3217
+ }, params?: RequestParams) => Promise<AxiosResponse<RevUsersGetResponse, any>>;
3218
+ /**
3219
+ * @description Links a rev user to a rev org.
3220
+ *
3221
+ * @tags rev-users
3222
+ * @name LinkRevUserToRevOrg
3223
+ * @request POST:/rev-users.link
3224
+ * @secure
3225
+ */
3226
+ linkRevUserToRevOrg: (data: LinkRevUserToRevOrgRequest, params?: RequestParams) => Promise<AxiosResponse<LinkRevUserToRevOrgResponse, any>>;
3227
+ /**
3228
+ * @description Returns a list of all Rev Users belonging to the authenticated user's Dev Organization.
3229
+ *
3230
+ * @tags rev-users
3231
+ * @name RevUsersList
3232
+ * @request GET:/rev-users.list
3233
+ * @secure
3234
+ */
3235
+ revUsersList: (query?: {
3236
+ /** Filters for Rev users that were created by the specified user(s). */
3237
+ created_by?: string[];
3238
+ /**
3239
+ * Filters for objects created after the provided timestamp (inclusive).
3240
+ * @format date-time
3241
+ */
3242
+ "created_date.after"?: string;
3243
+ /**
3244
+ * Filters for objects created before the provided timestamp
3245
+ * (inclusive).
3246
+ * @format date-time
3247
+ */
3248
+ "created_date.before"?: string;
3249
+ /**
3250
+ * The cursor to resume iteration from. If not provided, then iteration
3251
+ * starts from the beginning.
3252
+ */
3253
+ cursor?: string;
3254
+ /** List of emails of Rev users to be filtered. */
3255
+ email?: string[];
3256
+ /** List of external refs to filter Rev users for. */
3257
+ external_ref?: string[];
3258
+ /**
3259
+ * The maximum number of Rev users to return. The default is '50'.
3260
+ * @format int32
3261
+ */
3262
+ limit?: number;
3263
+ /**
3264
+ * The iteration mode to use, otherwise if not set, then "after" is
3265
+ * used.
3266
+ */
3267
+ mode?: ListMode;
3268
+ /**
3269
+ * Filters for objects created after the provided timestamp (inclusive).
3270
+ * @format date-time
3271
+ */
3272
+ "modified_date.after"?: string;
3273
+ /**
3274
+ * Filters for objects created before the provided timestamp
3275
+ * (inclusive).
3276
+ * @format date-time
3277
+ */
3278
+ "modified_date.before"?: string;
3279
+ /**
3280
+ * List of IDs of Rev organizations to be filtered.
3281
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:revo/<rev-org-id>"]
3282
+ */
3283
+ rev_org?: string[];
3284
+ /** Fields to sort the Rev users by and the direction to sort them. */
3285
+ sort_by?: string[];
3286
+ }, params?: RequestParams) => Promise<AxiosResponse<RevUsersListResponse, any>>;
3287
+ /**
3288
+ * @description Unlinks a rev user from a rev org.
3289
+ *
3290
+ * @tags rev-users
3291
+ * @name UnlinkRevUserFromRevOrg
3292
+ * @request POST:/rev-users.unlink
3293
+ * @secure
3294
+ */
3295
+ unlinkRevUserFromRevOrg: (data: UnlinkRevUserFromRevOrgRequest, params?: RequestParams) => Promise<AxiosResponse<UnlinkRevUserFromRevOrgResponse, any>>;
3296
+ /**
3297
+ * @description Updates a Rev user.
3298
+ *
3299
+ * @tags rev-users
3300
+ * @name RevUsersUpdate
3301
+ * @request POST:/rev-users.update
3302
+ * @secure
3303
+ */
3304
+ revUsersUpdate: (data: RevUsersUpdateRequest, params?: RequestParams) => Promise<AxiosResponse<RevUsersUpdateResponse, any>>;
3305
+ /**
3306
+ * @description Gets the aggregated schema.
3307
+ *
3308
+ * @tags customization
3309
+ * @name AggregatedSchemaGet
3310
+ * @request GET:/schemas.aggregated.get
3311
+ * @secure
3312
+ */
3313
+ aggregatedSchemaGet: (query: {
3314
+ /** The list of custom schema fragment DONs which are to be aggregated. */
3315
+ custom_schema_fragment_ids: string[];
3316
+ /** The stock schema fragment which is to be aggregated. */
3317
+ stock_schema_fragment_id?: string;
3318
+ }, params?: RequestParams) => Promise<AxiosResponse<AggregatedSchemaGetResponse, any>>;
3319
+ /**
3320
+ * @description Gets a custom schema fragment.
3321
+ *
3322
+ * @tags customization
3323
+ * @name CustomSchemaFragmentsGet
3324
+ * @request GET:/schemas.custom.get
3325
+ * @secure
3326
+ */
3327
+ customSchemaFragmentsGet: (query: {
3328
+ /** The ID of the custom schema fragment. */
3329
+ id: string;
3330
+ }, params?: RequestParams) => Promise<AxiosResponse<CustomSchemaFragmentsGetResponse, any>>;
3331
+ /**
3332
+ * @description Lists custom schema fragments.
3333
+ *
3334
+ * @tags customization
3335
+ * @name CustomSchemaFragmentsList
3336
+ * @request GET:/schemas.custom.list
3337
+ * @secure
3338
+ */
3339
+ customSchemaFragmentsList: (query?: {
3340
+ /** The list of app names. */
3341
+ app?: string[];
3342
+ /**
3343
+ * The cursor to resume iteration from, otherwise if not provided, then
3344
+ * iteration starts from the beginning.
3345
+ */
3346
+ cursor?: string;
3347
+ /** The list of leaf types. */
3348
+ leaf_type?: string[];
3349
+ /**
3350
+ * The maximum number of items.
3351
+ * @format int32
3352
+ */
3353
+ limit?: number;
3354
+ /** The list of fields to sort the items by and how to sort them. */
3355
+ sort_by?: string[];
3356
+ /** The list of subtypes. */
3357
+ subtype?: string[];
3358
+ /** Filters for custom schema fragment of the provided types. */
3359
+ types?: CustomSchemaFragmentType[];
3360
+ }, params?: RequestParams) => Promise<AxiosResponse<CustomSchemaFragmentsListResponse, any>>;
3361
+ /**
3362
+ * @description Creates or updates a custom schema fragment.
3363
+ *
3364
+ * @tags customization
3365
+ * @name CustomSchemaFragmentsSet
3366
+ * @request POST:/schemas.custom.set
3367
+ * @secure
3368
+ */
3369
+ customSchemaFragmentsSet: (data: CustomSchemaFragmentsSetRequest, params?: RequestParams) => Promise<AxiosResponse<CustomSchemaFragmentsSetResponse, any>>;
3370
+ /**
3371
+ * @description Lists subtypes.
3372
+ *
3373
+ * @tags customization
3374
+ * @name SubtypesList
3375
+ * @request GET:/schemas.subtypes.list
3376
+ * @secure
3377
+ */
3378
+ subtypesList: (query?: {
3379
+ /**
3380
+ * Leaf type for which subtypes are required.
3381
+ * @deprecated
3382
+ */
3383
+ leaf_type?: string;
3384
+ /** List of leaf types for which subtypes are required. */
3385
+ leaf_types?: string[];
3386
+ }, params?: RequestParams) => Promise<AxiosResponse<SubtypesListResponse, any>>;
3387
+ /**
3388
+ * @description Assigns the SLA to a set of Rev organizations.
3389
+ *
3390
+ * @tags slas
3391
+ * @name SlasAssign
3392
+ * @request POST:/slas.assign
3393
+ * @secure
3394
+ */
3395
+ slasAssign: (data: SlasAssignRequest, params?: RequestParams) => Promise<AxiosResponse<SlasAssignResponse, any>>;
3396
+ /**
3397
+ * @description Creates an SLA in draft status.
3398
+ *
3399
+ * @tags slas
3400
+ * @name SlasCreate
3401
+ * @request POST:/slas.create
3402
+ * @secure
3403
+ */
3404
+ slasCreate: (data: SlasCreateRequest, params?: RequestParams) => Promise<AxiosResponse<SlasCreateResponse, any>>;
3405
+ /**
3406
+ * @description Gets an SLA.
3407
+ *
3408
+ * @tags slas
3409
+ * @name SlasGet
3410
+ * @request GET:/slas.get
3411
+ * @secure
3412
+ */
3413
+ slasGet: (query: {
3414
+ /** The ID of the SLA to get. */
3415
+ id: string;
3416
+ }, params?: RequestParams) => Promise<AxiosResponse<SlasGetResponse, any>>;
3417
+ /**
3418
+ * @description Lists SLAs matching a filter.
3419
+ *
3420
+ * @tags slas
3421
+ * @name SlasList
3422
+ * @request GET:/slas.list
3423
+ * @secure
3424
+ */
3425
+ slasList: (query?: {
3426
+ /**
3427
+ * The cursor to resume iteration from. If not provided, then iteration
3428
+ * starts from the beginning.
3429
+ */
3430
+ cursor?: string;
3431
+ /**
3432
+ * The maximum number of SLAs to return. The default is '50'.
3433
+ * @format int32
3434
+ */
3435
+ limit?: number;
3436
+ /**
3437
+ * The iteration mode to use, otherwise if not set, then "after" is
3438
+ * used.
3439
+ */
3440
+ mode?: ListMode;
3441
+ /** The SLA statuses the filter matches. */
3442
+ status?: SlaStatus[];
3443
+ }, params?: RequestParams) => Promise<AxiosResponse<SlasListResponse, any>>;
3444
+ /**
3445
+ * @description Changes the status of an SLA.
3446
+ *
3447
+ * @tags slas
3448
+ * @name SlasTransition
3449
+ * @request POST:/slas.transition
3450
+ * @secure
3451
+ */
3452
+ slasTransition: (data: SlasTransitionRequest, params?: RequestParams) => Promise<AxiosResponse<SlasTransitionResponse, any>>;
3453
+ /**
3454
+ * @description Updates a draft SLA.
3455
+ *
3456
+ * @tags slas
3457
+ * @name SlasUpdate
3458
+ * @request POST:/slas.update
3459
+ * @secure
3460
+ */
3461
+ slasUpdate: (data: SlasUpdateRequest, params?: RequestParams) => Promise<AxiosResponse<SlasUpdateResponse, any>>;
3462
+ /**
3463
+ * @description Lists system users within your organization.
3464
+ *
3465
+ * @tags sys-users
3466
+ * @name SysUsersList
3467
+ * @request GET:/sys-users.list
3468
+ * @secure
3469
+ */
3470
+ sysUsersList: (query?: {
3471
+ /**
3472
+ * The cursor to resume iteration from. If not provided, then iteration
3473
+ * starts from the beginning.
3474
+ */
3475
+ cursor?: string;
3476
+ /**
3477
+ * The maximum number of system users to return. Value can range from
3478
+ * '1' to '100', with a default of '50'.
3479
+ * @format int32
3480
+ */
3481
+ limit?: number;
3482
+ /**
3483
+ * The iteration mode to use, otherwise if not set, then "after" is
3484
+ * used.
3485
+ */
3486
+ mode?: ListMode;
3487
+ /** Fields to sort the system users by and the direction to sort them. */
3488
+ sort_by?: string[];
3489
+ }, params?: RequestParams) => Promise<AxiosResponse<SysUsersListResponse, any>>;
3490
+ /**
3491
+ * @description Updates the system user.
3492
+ *
3493
+ * @tags sys-users
3494
+ * @name SysUsersUpdate
3495
+ * @request POST:/sys-users.update
3496
+ * @secure
3497
+ */
3498
+ sysUsersUpdate: (data: SysUsersUpdateRequest, params?: RequestParams) => Promise<AxiosResponse<SysUsersUpdateResponse, any>>;
3499
+ /**
3500
+ * @description Creates a new entry on an object's timeline.
3501
+ *
3502
+ * @tags timeline-entries
3503
+ * @name TimelineEntriesCreate
3504
+ * @request POST:/timeline-entries.create
3505
+ * @secure
3506
+ */
3507
+ timelineEntriesCreate: (data: TimelineEntriesCreateRequest, params?: RequestParams) => Promise<AxiosResponse<TimelineEntriesCreateResponse, any>>;
3508
+ /**
3509
+ * @description Lists the timeline entries for an object.
3510
+ *
3511
+ * @tags timeline-entries
3512
+ * @name TimelineEntriesList
3513
+ * @request GET:/timeline-entries.list
3514
+ * @secure
3515
+ */
3516
+ timelineEntriesList: (query: {
3517
+ /**
3518
+ * The ID of the object to list timeline entries for.
3519
+ * @example "don:core:<partition>:devo/<dev-org-id>:<part-type>/<part-id>"
3520
+ */
3521
+ object: string;
3522
+ /**
3523
+ * The collection(s) to list entries from, otherwise if not provided,
3524
+ * all entries are returned.
3525
+ */
3526
+ collections?: TimelineEntriesCollection[];
3527
+ /**
3528
+ * The cursor to resume iteration from. If not provided, then iteration
3529
+ * starts from the beginning.
3530
+ */
3531
+ cursor?: string;
3532
+ /**
3533
+ * The maximum number of entries to return. If not set, then this
3534
+ * defaults to `50`.
3535
+ * @format int32
3536
+ */
3537
+ limit?: number;
3538
+ /**
3539
+ * The iteration mode to use, otherwise if not set, then "after" is
3540
+ * used.
3541
+ */
3542
+ mode?: ListMode;
3543
+ /**
3544
+ * The visibility of the timeline entries to filter for. Note this is a
3545
+ * strict filter, such that only entries with the exact visibilities
3546
+ * specified will be returned.
3547
+ */
3548
+ visibility?: TimelineEntryVisibility[];
3549
+ }, params?: RequestParams) => Promise<AxiosResponse<TimelineEntriesListResponse, any>>;
3550
+ /**
3551
+ * @description Creates new work ([issue](https://devrev.ai/docs/product/build), [ticket](https://devrev.ai/docs/product/support)) item. [task](https://docs.devrev.ai/product/tasks) and opportunity work types are supported in the beta version.
3552
+ *
3553
+ * @tags works
3554
+ * @name WorksCreate
3555
+ * @request POST:/works.create
3556
+ * @secure
3557
+ */
3558
+ worksCreate: (data: WorksCreateRequest, params?: RequestParams) => Promise<AxiosResponse<WorksCreateResponse, any>>;
3559
+ /**
3560
+ * @description Deletes a work item.
3561
+ *
3562
+ * @tags works
3563
+ * @name WorksDelete
3564
+ * @request POST:/works.delete
3565
+ * @secure
3566
+ */
3567
+ worksDelete: (data: WorksDeleteRequest, params?: RequestParams) => Promise<AxiosResponse<object, any>>;
3568
+ /**
3569
+ * @description Exports a collection of work items.
3570
+ *
3571
+ * @tags works
3572
+ * @name WorksExport
3573
+ * @request GET:/works.export
3574
+ * @secure
3575
+ */
3576
+ worksExport: (query?: {
3577
+ /**
3578
+ * Filters for work belonging to any of the provided parts.
3579
+ * @example ["don:core:<partition>:devo/<dev-org-id>:<part-type>/<part-id>"]
3580
+ */
3581
+ applies_to_part?: string[];
3582
+ /**
3583
+ * Filters for work created by any of these users.
3584
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:devu/<dev-user-id>"]
3585
+ */
3586
+ created_by?: string[];
3587
+ /**
3588
+ * The number of work items to return. The default is '50', the maximum
3589
+ * is '5000'.
3590
+ * @format int32
3591
+ */
3592
+ first?: number;
3593
+ /** Filters for issues with any of the provided priorities. */
3594
+ "issue.priority"?: IssuePriority[];
3595
+ /**
3596
+ * Filters for issues with any of the provided Rev organizations.
3597
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:revo/<rev-org-id>"]
3598
+ */
3599
+ "issue.rev_orgs"?: string[];
3600
+ /**
3601
+ * Filters for opportunities belonging to any of the provided accounts.
3602
+ * @example ["don:core:<partition>:devo/<dev-org-id>:account/<account-id>"]
3603
+ */
3604
+ "opportunity.account"?: string[];
3605
+ /** Filters for opportunities with any of the provided contacts. */
3606
+ "opportunity.contacts"?: string[];
3607
+ /**
3608
+ * Filters for work owned by any of these users.
3609
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:devu/<dev-user-id>"]
3610
+ */
3611
+ owned_by?: string[];
3612
+ /** Filters for records in the provided stage(s). */
3613
+ "stage.name"?: string[];
3614
+ /** Filters for tickets belonging to specific groups. */
3615
+ "ticket.group"?: string[];
3616
+ /** Filters for tickets that are spam. */
3617
+ "ticket.is_spam"?: boolean;
3618
+ /** Filters for tickets that need response. */
3619
+ "ticket.needs_response"?: boolean;
3620
+ /**
3621
+ * Filters for tickets that are associated with any of the provided Rev
3622
+ * organizations.
3623
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:revo/<rev-org-id>"]
3624
+ */
3625
+ "ticket.rev_org"?: string[];
3626
+ /** Filters for tickets with any of the provided severities. */
3627
+ "ticket.severity"?: TicketSeverity[];
3628
+ /** Filters for tickets with any of the provided source channels. */
3629
+ "ticket.source_channel"?: string[];
3630
+ /** Filters for work of the provided types. */
3631
+ type?: WorkType[];
3632
+ }, params?: RequestParams) => Promise<AxiosResponse<WorksExportResponse, any>>;
3633
+ /**
3634
+ * @description Gets a work item's information.
3635
+ *
3636
+ * @tags works
3637
+ * @name WorksGet
3638
+ * @request GET:/works.get
3639
+ * @secure
3640
+ */
3641
+ worksGet: (query: {
3642
+ /**
3643
+ * The work's ID.
3644
+ * @example "don:core:<partition>:devo/<dev-org-id>:<work-type>/<work-id>"
3645
+ */
3646
+ id: string;
3647
+ }, params?: RequestParams) => Promise<AxiosResponse<WorksGetResponse, any>>;
3648
+ /**
3649
+ * @description Lists a collection of work items.
3650
+ *
3651
+ * @tags works
3652
+ * @name WorksList
3653
+ * @request GET:/works.list
3654
+ * @secure
3655
+ */
3656
+ worksList: (query?: {
3657
+ /**
3658
+ * Filters for work belonging to any of the provided parts.
3659
+ * @example ["don:core:<partition>:devo/<dev-org-id>:<part-type>/<part-id>"]
3660
+ */
3661
+ applies_to_part?: string[];
3662
+ /**
3663
+ * Filters for work created by any of these users.
3664
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:devu/<dev-user-id>"]
3665
+ */
3666
+ created_by?: string[];
3667
+ /**
3668
+ * The cursor to resume iteration from. If not provided, then iteration
3669
+ * starts from the beginning.
3670
+ */
3671
+ cursor?: string;
3672
+ /** Filters for issues with any of the provided priorities. */
3673
+ "issue.priority"?: IssuePriority[];
3674
+ /**
3675
+ * Filters for issues with any of the provided Rev organizations.
3676
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:revo/<rev-org-id>"]
3677
+ */
3678
+ "issue.rev_orgs"?: string[];
3679
+ /**
3680
+ * The maximum number of works to return. The default is '50'.
3681
+ * @format int32
3682
+ */
3683
+ limit?: number;
3684
+ /**
3685
+ * The iteration mode to use, otherwise if not set, then "after" is
3686
+ * used.
3687
+ */
3688
+ mode?: ListMode;
3689
+ /**
3690
+ * Filters for opportunities belonging to any of the provided accounts.
3691
+ * @example ["don:core:<partition>:devo/<dev-org-id>:account/<account-id>"]
3692
+ */
3693
+ "opportunity.account"?: string[];
3694
+ /** Filters for opportunities with any of the provided contacts. */
3695
+ "opportunity.contacts"?: string[];
3696
+ /**
3697
+ * Filters for work owned by any of these users.
3698
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:devu/<dev-user-id>"]
3699
+ */
3700
+ owned_by?: string[];
3701
+ /** Filters for records in the provided stage(s). */
3702
+ "stage.name"?: string[];
3703
+ /** Filters for tickets belonging to specific groups. */
3704
+ "ticket.group"?: string[];
3705
+ /** Filters for tickets that are spam. */
3706
+ "ticket.is_spam"?: boolean;
3707
+ /** Filters for tickets that need response. */
3708
+ "ticket.needs_response"?: boolean;
3709
+ /**
3710
+ * Filters for tickets that are associated with any of the provided Rev
3711
+ * organizations.
3712
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:revo/<rev-org-id>"]
3713
+ */
3714
+ "ticket.rev_org"?: string[];
3715
+ /** Filters for tickets with any of the provided severities. */
3716
+ "ticket.severity"?: TicketSeverity[];
3717
+ /** Filters for tickets with any of the provided source channels. */
3718
+ "ticket.source_channel"?: string[];
3719
+ /** Filters for work of the provided types. */
3720
+ type?: WorkType[];
3721
+ }, params?: RequestParams) => Promise<AxiosResponse<WorksListResponse, any>>;
3722
+ /**
3723
+ * @description Updates a work item's information.
3724
+ *
3725
+ * @tags works
3726
+ * @name WorksUpdate
3727
+ * @request POST:/works.update
3728
+ * @secure
3729
+ */
3730
+ worksUpdate: (data: WorksUpdateRequest, params?: RequestParams) => Promise<AxiosResponse<WorksUpdateResponse, any>>;
3731
+ }