@devrev/typescript-sdk 1.1.3 → 1.1.5

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,2847 @@
1
+ /** artifact-summary */
2
+ export type ArtifactSummary = AtomBaseSummary;
3
+ /**
4
+ * artifacts-locate-response
5
+ * The response to getting an artifact's download URL.
6
+ */
7
+ export interface ArtifactsLocateResponse {
8
+ /**
9
+ * The expiration timestamp of the URL.
10
+ * @format date-time
11
+ */
12
+ expires_at?: string;
13
+ /** The artifact's download URL. */
14
+ url: string;
15
+ }
16
+ /**
17
+ * artifacts-prepare-request
18
+ * The request to prepare a URL to upload a file.
19
+ */
20
+ export interface ArtifactsPrepareRequest {
21
+ /** The name of the file that's being uploaded. */
22
+ file_name: string;
23
+ }
24
+ /**
25
+ * artifacts-prepare-response
26
+ * The response to preparing a URL to upload a file.
27
+ */
28
+ export interface ArtifactsPrepareResponse {
29
+ /** The POST policy form data. */
30
+ form_data: ArtifactsPrepareResponseFormData[];
31
+ /**
32
+ * The generated artifact's ID.
33
+ * @example "don:core:<partition>:devo/<dev-org-id>:artifact/<artifact-id>"
34
+ */
35
+ id: string;
36
+ /** The URL that the file's data should be uploaded to. */
37
+ url: string;
38
+ }
39
+ /** artifacts-prepare-response-form-data */
40
+ export interface ArtifactsPrepareResponseFormData {
41
+ /** Key of the form field. */
42
+ key: string;
43
+ /** Value corresponding to the key. */
44
+ value: string;
45
+ }
46
+ /** atom-base */
47
+ export interface AtomBase {
48
+ created_by?: UserSummary;
49
+ /**
50
+ * Timestamp when the object was created.
51
+ * @format date-time
52
+ */
53
+ created_date?: string;
54
+ /** Human-readable object ID unique to the Dev organization. */
55
+ display_id?: string;
56
+ /** Globally unique object ID. */
57
+ id: string;
58
+ modified_by?: UserSummary;
59
+ /**
60
+ * Timestamp when the object was last modified.
61
+ * @format date-time
62
+ */
63
+ modified_date?: string;
64
+ }
65
+ /** atom-base-summary */
66
+ export interface AtomBaseSummary {
67
+ /** Human-readable object ID unique to the Dev organization. */
68
+ display_id?: string;
69
+ /** Globally unique object ID. */
70
+ id: string;
71
+ }
72
+ /**
73
+ * auth-connection
74
+ * Connection object that specifies the configuration for an
75
+ * authentication connection that is set up for a Dev organization.
76
+ */
77
+ export type AuthConnection = (AuthConnectionOptionsAzureAd | AuthConnectionOptionsGoogleApps | AuthConnectionOptionsOidc | AuthConnectionOptionsSaml | AuthConnectionOptionsSocial) & {
78
+ /**
79
+ * Display name of the authentication connection. This name will be
80
+ * visible to all the users when they sign in to this Dev
81
+ * organization. For example, if the display_name is 'abclogin', then
82
+ * it would appear on the login button as 'Log in to abclogin'.
83
+ */
84
+ display_name?: string;
85
+ /**
86
+ * Whether the authentication connection is enabled or disabled. If
87
+ * set to false, the authentication connection will not show up on the
88
+ * login screen as a login option.
89
+ */
90
+ enabled?: boolean;
91
+ /** ID of the authentication connection. */
92
+ id: string;
93
+ /**
94
+ * Defines the type for the authentication connection. The configuration
95
+ * for each authentication connection will depend on the type value.
96
+ */
97
+ type: AuthConnectionType;
98
+ };
99
+ /**
100
+ * auth-connection-options-azure-ad
101
+ * Object encapsulating the configuration parameters for an Azure AD
102
+ * authentication connection.
103
+ */
104
+ export interface AuthConnectionOptionsAzureAd {
105
+ /** Client ID for the Azure authentication connection. */
106
+ client_id?: string;
107
+ /** Client secret for the Azure authentication connection. */
108
+ client_secret?: string;
109
+ /** Domain URL of the Azure authentication connection. */
110
+ domain?: string;
111
+ }
112
+ /**
113
+ * auth-connection-options-google-apps
114
+ * Object encapsulating the configuration parameters for a Google Apps
115
+ * authentication connection.
116
+ */
117
+ export interface AuthConnectionOptionsGoogleApps {
118
+ /** Client ID for the Google Apps authentication connection. */
119
+ client_id?: string;
120
+ /** Client secret for the Google Apps authentication connection. */
121
+ client_secret?: string;
122
+ /** Tenant domain URL of the Google Apps authentication connection. */
123
+ tenant_domain?: string;
124
+ }
125
+ /**
126
+ * auth-connection-options-oidc
127
+ * Object encapsulating the configuration parameters for an OIDC
128
+ * authentication connection.
129
+ */
130
+ export interface AuthConnectionOptionsOidc {
131
+ /** Client ID for the OIDC authentication connection. */
132
+ client_id?: string;
133
+ /** Client secret for the OIDC authentication connection. */
134
+ client_secret?: string;
135
+ /** Issuer URL of the OIDC authentication connection. */
136
+ issuer?: string;
137
+ }
138
+ /**
139
+ * auth-connection-options-saml
140
+ * Object encapsulating the configuration parameters for a SAML
141
+ * authentication connection.
142
+ */
143
+ export interface AuthConnectionOptionsSaml {
144
+ /** Sign In endpoint for the SAML authentication connection. */
145
+ sign_in_endpoint?: string;
146
+ /** Signing certificate for the SAML authentication connection. */
147
+ signing_cert?: string;
148
+ }
149
+ /** auth-connection-options-social */
150
+ export type AuthConnectionOptionsSocial = object;
151
+ export declare enum AuthConnectionToggle {
152
+ Disable = "disable",
153
+ Enable = "enable"
154
+ }
155
+ /**
156
+ * Defines the type for the authentication connection. The configuration
157
+ * for each authentication connection will depend on the type value.
158
+ */
159
+ export declare enum AuthConnectionType {
160
+ GoogleApps = "google_apps",
161
+ Oidc = "oidc",
162
+ Samlp = "samlp",
163
+ Social = "social",
164
+ Waad = "waad"
165
+ }
166
+ /** auth-token */
167
+ export type AuthToken = AtomBase & {
168
+ /**
169
+ * An identifier that represents the application that requested the
170
+ * token. Only applicable for application access tokens.
171
+ */
172
+ client_id?: string;
173
+ /**
174
+ * The time at which the token expires.
175
+ * @format date-time
176
+ */
177
+ expires_at?: string;
178
+ /**
179
+ * The time at which the token was issued.
180
+ * @format date-time
181
+ */
182
+ issued_at?: string;
183
+ /** The type of the requested token. */
184
+ requested_token_type?: AuthTokenRequestedTokenType;
185
+ /** The scopes associated with the issued token. */
186
+ scopes?: string[];
187
+ /** The status of the token. */
188
+ status?: AuthTokenStatus;
189
+ /** The subject of the token. */
190
+ subject?: string;
191
+ /** A hint that identifies the token. */
192
+ token_hint?: string;
193
+ };
194
+ /** Specifies the process of obtaining a token. */
195
+ export declare enum AuthTokenGrantType {
196
+ UrnDevrevParamsOauthGrantTypeTokenIssue = "urn:devrev:params:oauth:grant-type:token-issue",
197
+ UrnIetfParamsOauthGrantTypeTokenExchange = "urn:ietf:params:oauth:grant-type:token-exchange"
198
+ }
199
+ /** The type of the requested token. */
200
+ export declare enum AuthTokenRequestedTokenType {
201
+ UrnDevrevParamsOauthTokenTypeAat = "urn:devrev:params:oauth:token-type:aat",
202
+ UrnDevrevParamsOauthTokenTypeAatPublic = "urn:devrev:params:oauth:token-type:aat:public",
203
+ UrnDevrevParamsOauthTokenTypeDev = "urn:devrev:params:oauth:token-type:dev",
204
+ UrnDevrevParamsOauthTokenTypePat = "urn:devrev:params:oauth:token-type:pat",
205
+ UrnDevrevParamsOauthTokenTypeRev = "urn:devrev:params:oauth:token-type:rev",
206
+ UrnDevrevParamsOauthTokenTypeSession = "urn:devrev:params:oauth:token-type:session",
207
+ UrnDevrevParamsOauthTokenTypeSessionDev0 = "urn:devrev:params:oauth:token-type:session:dev0",
208
+ UrnDevrevParamsOauthTokenTypeSys = "urn:devrev:params:oauth:token-type:sys",
209
+ UrnIetfParamsOauthTokenTypeJwt = "urn:ietf:params:oauth:token-type:jwt"
210
+ }
211
+ /** The status of the token. */
212
+ export declare enum AuthTokenStatus {
213
+ Active = "active",
214
+ Expired = "expired",
215
+ Revoked = "revoked"
216
+ }
217
+ /** The type of the subject token. */
218
+ export declare enum AuthTokenSubjectTokenType {
219
+ UrnDevrevParamsOauthTokenTypeJwtAuth0 = "urn:devrev:params:oauth:token-type:jwt:auth0",
220
+ UrnDevrevParamsOauthTokenTypeJwtDev = "urn:devrev:params:oauth:token-type:jwt:dev",
221
+ UrnDevrevParamsOauthTokenTypeRevinfo = "urn:devrev:params:oauth:token-type:revinfo",
222
+ UrnDevrevParamsOauthTokenTypeSysu = "urn:devrev:params:oauth:token-type:sysu",
223
+ UrnDevrevParamsOauthTokenTypeUserinfo = "urn:devrev:params:oauth:token-type:userinfo",
224
+ UrnDevrevParamsOauthTokenTypeUserinfoProfile = "urn:devrev:params:oauth:token-type:userinfo:profile",
225
+ UrnIetfParamsOauthTokenTypeJwt = "urn:ietf:params:oauth:token-type:jwt"
226
+ }
227
+ /** The type of the issued token. Bearer is the only supported token type. */
228
+ export declare enum AuthTokenTokenType {
229
+ Bearer = "bearer"
230
+ }
231
+ /**
232
+ * auth-tokens-create-request
233
+ * A request to create a new token corresponding to the requested token
234
+ * type.
235
+ */
236
+ export interface AuthTokensCreateRequest {
237
+ /** The expected audience values with respect to the token. */
238
+ aud?: string[];
239
+ /**
240
+ * An identifier that represents the application which is requesting
241
+ * the token. If no client_id is present in the request to generate an
242
+ * application access token (AAT), DevRev will generate a client_id.
243
+ * This client_id is only associated with an AAT.
244
+ */
245
+ client_id?: string;
246
+ /**
247
+ * The expected validity lifetime of the token in number of days.
248
+ * @format int64
249
+ */
250
+ expires_in?: number;
251
+ /** Specifies the process of obtaining a token. */
252
+ grant_type?: AuthTokenGrantType;
253
+ /** The type of the requested token. */
254
+ requested_token_type?: AuthTokenRequestedTokenType;
255
+ /**
256
+ * Carries info corresponding to the Rev user to be provisioned and/or
257
+ * issue a Rev session token.
258
+ */
259
+ rev_info?: AuthTokensRevInfo;
260
+ /**
261
+ * The requested set of scopes associated with the issued token. A
262
+ * space-delimited list of values in which the order of values does
263
+ * not matter.
264
+ */
265
+ scope?: string;
266
+ /**
267
+ * Represents the entity that requests the token. Not required when
268
+ * requesting an application access token (AAT).
269
+ */
270
+ subject_token?: string;
271
+ /** The type of the subject token. */
272
+ subject_token_type?: AuthTokenSubjectTokenType;
273
+ /** A hint that identifies the token. */
274
+ token_hint?: string;
275
+ }
276
+ /**
277
+ * auth-tokens-create-response
278
+ * Response for the request to create a new token corresponding to the
279
+ * requested token type.
280
+ */
281
+ export interface AuthTokensCreateResponse {
282
+ /**
283
+ * The issued JSON Web Token (JWT) corresponding to the requested
284
+ * token type.
285
+ */
286
+ access_token: string;
287
+ /**
288
+ * An identifier that represents the application which is requesting
289
+ * the token. Only present in a response corresponding to an
290
+ * application access token (AAT).
291
+ */
292
+ client_id?: string;
293
+ /**
294
+ * The validity lifetime of the token specified in seconds since Unix
295
+ * epoch.
296
+ * @format int64
297
+ */
298
+ expires_in: number;
299
+ /** A token to refresh the issued token. */
300
+ refresh_token?: string;
301
+ /**
302
+ * The scopes associated with the issued token. A space-delimited list
303
+ * of values in which the order of values does not matter.
304
+ */
305
+ scope?: string;
306
+ /** The type of the issued token. Bearer is the only supported token type. */
307
+ token_type: AuthTokenTokenType;
308
+ }
309
+ /**
310
+ * auth-tokens-delete-request
311
+ * The request to revoke the token.
312
+ */
313
+ export interface AuthTokensDeleteRequest {
314
+ /**
315
+ * The unique identifier for the token under a given Dev organization.
316
+ * If no token ID is provided, then the token ID will be set from the
317
+ * JTI claim of the token in the authorization header.
318
+ */
319
+ token_id?: string;
320
+ }
321
+ /**
322
+ * auth-tokens-get-response
323
+ * The response to get the token metadata.
324
+ */
325
+ export interface AuthTokensGetResponse {
326
+ token: AuthToken;
327
+ }
328
+ /**
329
+ * auth-tokens-list-response
330
+ * The response to list the token metadata.
331
+ */
332
+ export interface AuthTokensListResponse {
333
+ /** The list of token metadata. */
334
+ tokens: AuthToken[];
335
+ }
336
+ /**
337
+ * auth-tokens-org-traits
338
+ * Carries Rev org info.
339
+ */
340
+ export interface AuthTokensOrgTraits {
341
+ /** The display name of the Rev org. */
342
+ display_name?: string;
343
+ /** The domain of the Rev org. */
344
+ domain?: string;
345
+ }
346
+ /**
347
+ * auth-tokens-rev-info
348
+ * Carries info corresponding to the Rev user to be provisioned and/or
349
+ * issue a Rev session token.
350
+ */
351
+ export interface AuthTokensRevInfo {
352
+ /** An identifier which uniquely identifies a Rev org. */
353
+ org_ref?: string;
354
+ /** Carries Rev org info. */
355
+ org_traits?: AuthTokensOrgTraits;
356
+ /** The unique ID of the Rev user. */
357
+ user_id?: string;
358
+ /** An identifier which uniquely identifies a Rev user. */
359
+ user_ref?: string;
360
+ /** Carries Rev user info. */
361
+ user_traits?: AuthTokensUserTraits;
362
+ }
363
+ /**
364
+ * auth-tokens-self-delete-request
365
+ * The request to delete all the tokens created by the authenticated user,
366
+ * that match with the provided token type.
367
+ */
368
+ export interface AuthTokensSelfDeleteRequest {
369
+ /** The type of the requested token. */
370
+ requested_token_type?: AuthTokenRequestedTokenType;
371
+ }
372
+ /**
373
+ * auth-tokens-update-request
374
+ * A request to update the token metadata.
375
+ */
376
+ export interface AuthTokensUpdateRequest {
377
+ /** A hint that identifies the token. */
378
+ token_hint: string;
379
+ /** The unique identifier of the token under a given Dev organization. */
380
+ token_id: string;
381
+ }
382
+ /**
383
+ * auth-tokens-update-response
384
+ * Response for the request to update the token metadata.
385
+ */
386
+ export interface AuthTokensUpdateResponse {
387
+ token: AuthToken;
388
+ }
389
+ /**
390
+ * auth-tokens-user-traits
391
+ * Carries Rev user info.
392
+ */
393
+ export interface AuthTokensUserTraits {
394
+ /** Application-defined custom fields. */
395
+ custom_fields?: object;
396
+ /** The display name of the Rev user. */
397
+ display_name?: string;
398
+ /** The email address of the Rev user. */
399
+ email?: string;
400
+ /** The full name of the Rev user. */
401
+ full_name?: string;
402
+ /** Phone numbers of the Rev user. */
403
+ phone_numbers?: string[];
404
+ }
405
+ /** capability */
406
+ export type Capability = PartBase;
407
+ /** capability-summary */
408
+ export type CapabilitySummary = PartBaseSummary;
409
+ /**
410
+ * dev-org-auth-connections-create-request
411
+ * Request to create a new enterprise authentication connection.
412
+ */
413
+ export type DevOrgAuthConnectionsCreateRequest = (AuthConnectionOptionsAzureAd | AuthConnectionOptionsGoogleApps | AuthConnectionOptionsOidc | AuthConnectionOptionsSaml) & {
414
+ /**
415
+ * Display name of the authentication connection. This name will be
416
+ * visible to all the users when they sign in to this Dev
417
+ * organization. For example, if the display_name is 'abclogin', then
418
+ * it would appear on the login button as 'Log in to abclogin'.
419
+ */
420
+ display_name?: string;
421
+ /**
422
+ * Defines the type for the authentication connection. Different types of
423
+ * authentication connections have different configuration parameters.
424
+ */
425
+ type: DevOrgAuthConnectionsCreateRequestType;
426
+ };
427
+ /**
428
+ * Defines the type for the authentication connection. Different types of
429
+ * authentication connections have different configuration parameters.
430
+ */
431
+ export declare enum DevOrgAuthConnectionsCreateRequestType {
432
+ GoogleApps = "google_apps",
433
+ Oidc = "oidc",
434
+ Samlp = "samlp",
435
+ Waad = "waad"
436
+ }
437
+ /**
438
+ * dev-org-auth-connections-create-response
439
+ * Response for the request to create a new enterprise authentication
440
+ * connection.
441
+ */
442
+ export interface DevOrgAuthConnectionsCreateResponse {
443
+ /**
444
+ * Connection object that specifies the configuration for an
445
+ * authentication connection that is set up for a Dev organization.
446
+ */
447
+ auth_connection: AuthConnection;
448
+ }
449
+ /**
450
+ * dev-org-auth-connections-delete-request
451
+ * Request to delete an enterprise authentication connection for a Dev
452
+ * organization. A default connection and a connection which is currently
453
+ * enabled cannot be deleted.
454
+ */
455
+ export interface DevOrgAuthConnectionsDeleteRequest {
456
+ /** ID of the authentication connection to be deleted. */
457
+ id: string;
458
+ }
459
+ /**
460
+ * dev-org-auth-connections-get-response
461
+ * Response object encapsulating the configuration details of an
462
+ * authentication connection.
463
+ */
464
+ export interface DevOrgAuthConnectionsGetResponse {
465
+ /**
466
+ * Connection object that specifies the configuration for an
467
+ * authentication connection that is set up for a Dev organization.
468
+ */
469
+ auth_connection: AuthConnection;
470
+ }
471
+ /**
472
+ * dev-org-auth-connections-list-response
473
+ * Response object for the request to list all the social and enterprise
474
+ * authentication connections configured for a Dev organization.
475
+ */
476
+ export interface DevOrgAuthConnectionsListResponse {
477
+ /**
478
+ * List of all the authentication connections currently configured for
479
+ * a Dev organization.
480
+ */
481
+ auth_connections: AuthConnection[];
482
+ }
483
+ /**
484
+ * dev-org-auth-connections-toggle-request
485
+ * Request to enable or disable an authentication connection for a Dev
486
+ * organization.
487
+ */
488
+ export interface DevOrgAuthConnectionsToggleRequest {
489
+ /** ID of the authentication connection to be toggled. */
490
+ id: string;
491
+ toggle?: AuthConnectionToggle;
492
+ }
493
+ /**
494
+ * dev-org-auth-connections-update-request
495
+ * Request to update an enterprise authentication connection for a Dev
496
+ * organization.
497
+ */
498
+ export type DevOrgAuthConnectionsUpdateRequest = (AuthConnectionOptionsAzureAd | AuthConnectionOptionsGoogleApps | AuthConnectionOptionsOidc | AuthConnectionOptionsSaml) & {
499
+ /**
500
+ * New display name of the authentication connection. This name will
501
+ * be visible to all the users when they sign in to this Dev
502
+ * organization. For example, if the display_name is 'abclogin', then
503
+ * it would appear on the login button as 'Log in to abclogin'.
504
+ */
505
+ display_name?: string;
506
+ /** ID of the authentication connection which is to be updated. */
507
+ id: string;
508
+ /**
509
+ * Specifies the type for the authentication connection. Different types
510
+ * of authentication connections have different configuration parameters
511
+ * that can be updated.
512
+ */
513
+ type: DevOrgAuthConnectionsUpdateRequestType;
514
+ };
515
+ /**
516
+ * Specifies the type for the authentication connection. Different types
517
+ * of authentication connections have different configuration parameters
518
+ * that can be updated.
519
+ */
520
+ export declare enum DevOrgAuthConnectionsUpdateRequestType {
521
+ GoogleApps = "google_apps",
522
+ None = "none",
523
+ Oidc = "oidc",
524
+ Samlp = "samlp",
525
+ Waad = "waad"
526
+ }
527
+ /**
528
+ * dev-org-auth-connections-update-response
529
+ * Response for the request to update an enterprise authentication
530
+ * connection.
531
+ */
532
+ export interface DevOrgAuthConnectionsUpdateResponse {
533
+ /**
534
+ * Connection object that specifies the configuration for an
535
+ * authentication connection that is set up for a Dev organization.
536
+ */
537
+ auth_connection: AuthConnection;
538
+ }
539
+ /** dev-user */
540
+ export type DevUser = UserBase & {
541
+ /** IDs of the Dev User outside the DevRev SOR. */
542
+ external_identities?: ExternalIdentity[];
543
+ };
544
+ /** dev-user-summary */
545
+ export type DevUserSummary = UserBaseSummary;
546
+ /**
547
+ * dev-users-list-response
548
+ * The response to listing the Dev users.
549
+ */
550
+ export interface DevUsersListResponse {
551
+ /** The list of Dev users. */
552
+ dev_users: DevUser[];
553
+ /**
554
+ * The cursor used to iterate subsequent results in accordance to the
555
+ * sort order. If not set, then no later elements exist.
556
+ */
557
+ next_cursor?: string;
558
+ /**
559
+ * The cursor used to iterate preceding results in accordance to the
560
+ * sort order. If not set, then no prior elements exist.
561
+ */
562
+ prev_cursor?: string;
563
+ }
564
+ /**
565
+ * dev-users-self-response
566
+ * The response to getting the information for the authenticated user.
567
+ */
568
+ export interface DevUsersSelfResponse {
569
+ dev_user: DevUser;
570
+ }
571
+ /** empty */
572
+ export type Empty = object;
573
+ /** enhancement */
574
+ export type Enhancement = PartBase & {
575
+ /**
576
+ * Timestamp when the enhancement is expected to be closed.
577
+ * @format date-time
578
+ */
579
+ target_close_date?: string;
580
+ };
581
+ /** enhancement-summary */
582
+ export type EnhancementSummary = PartBaseSummary;
583
+ /** error-bad-request */
584
+ export type ErrorBadRequest = ErrorBase & (ErrorBadRequestBadRequest | ErrorBadRequestInvalidEnumValue | ErrorBadRequestInvalidField | ErrorBadRequestMissingRequiredField | ErrorBadRequestParseError | ErrorBadRequestValueNotPermitted) & {
585
+ type: ErrorBadRequestType;
586
+ };
587
+ /** error-bad-request-bad-request */
588
+ export type ErrorBadRequestBadRequest = object;
589
+ /** error-bad-request-invalid-enum-value */
590
+ export interface ErrorBadRequestInvalidEnumValue {
591
+ /** The allowed values for the field. */
592
+ allowed_values: string[];
593
+ /** The field whose enum value is invalid. */
594
+ field_name: string;
595
+ /** The value that was received. */
596
+ value: string;
597
+ }
598
+ /** error-bad-request-invalid-field */
599
+ export interface ErrorBadRequestInvalidField {
600
+ /** The field name that's invalid. */
601
+ field_name: string;
602
+ }
603
+ /** error-bad-request-missing-required-field */
604
+ export interface ErrorBadRequestMissingRequiredField {
605
+ /** The missing field's name. */
606
+ field_name: string;
607
+ }
608
+ /** error-bad-request-parse-error */
609
+ export type ErrorBadRequestParseError = object;
610
+ export declare enum ErrorBadRequestType {
611
+ BadRequest = "bad_request",
612
+ InvalidEnumValue = "invalid_enum_value",
613
+ InvalidField = "invalid_field",
614
+ MissingRequiredField = "missing_required_field",
615
+ ParseError = "parse_error",
616
+ ValueNotPermitted = "value_not_permitted"
617
+ }
618
+ /** error-bad-request-value-not-permitted */
619
+ export interface ErrorBadRequestValueNotPermitted {
620
+ /** The field whose value is not permitted. */
621
+ field_name: string;
622
+ /** The reason the value isn't permitted. */
623
+ reason?: string;
624
+ }
625
+ /** error-base */
626
+ export interface ErrorBase {
627
+ /** Error detail information. */
628
+ detail?: string;
629
+ /** The message associated with the error. */
630
+ message?: string;
631
+ }
632
+ /** error-forbidden */
633
+ export type ErrorForbidden = ErrorBase & ErrorForbiddenForbidden & {
634
+ type: ErrorForbiddenType;
635
+ };
636
+ /** error-forbidden-forbidden */
637
+ export type ErrorForbiddenForbidden = object;
638
+ export declare enum ErrorForbiddenType {
639
+ Forbidden = "forbidden"
640
+ }
641
+ /** error-internal-server-error */
642
+ export type ErrorInternalServerError = ErrorBase & ErrorInternalServerErrorInternalError & {
643
+ /**
644
+ * A unique ID that's generated for the error that can be used for
645
+ * inquiry.
646
+ */
647
+ reference_id?: string;
648
+ type: ErrorInternalServerErrorType;
649
+ };
650
+ /** error-internal-server-error-internal-error */
651
+ export type ErrorInternalServerErrorInternalError = object;
652
+ export declare enum ErrorInternalServerErrorType {
653
+ InternalError = "internal_error"
654
+ }
655
+ /** error-not-found */
656
+ export type ErrorNotFound = ErrorBase & ErrorNotFoundNotFound & {
657
+ type: ErrorNotFoundType;
658
+ };
659
+ /** error-not-found-not-found */
660
+ export type ErrorNotFoundNotFound = object;
661
+ export declare enum ErrorNotFoundType {
662
+ NotFound = "not_found"
663
+ }
664
+ /** error-service-unavailable */
665
+ export type ErrorServiceUnavailable = ErrorBase & ErrorServiceUnavailableServiceUnavailable & {
666
+ type: ErrorServiceUnavailableType;
667
+ };
668
+ /** error-service-unavailable-service-unavailable */
669
+ export type ErrorServiceUnavailableServiceUnavailable = object;
670
+ export declare enum ErrorServiceUnavailableType {
671
+ ServiceUnavailable = "service_unavailable"
672
+ }
673
+ /** error-too-many-requests */
674
+ export type ErrorTooManyRequests = ErrorBase & ErrorTooManyRequestsTooManyRequests & {
675
+ /**
676
+ * The number of seconds after which the client should retry.
677
+ * @format int64
678
+ */
679
+ retry_after?: number;
680
+ type: ErrorTooManyRequestsType;
681
+ };
682
+ /** error-too-many-requests-too-many-requests */
683
+ export type ErrorTooManyRequestsTooManyRequests = object;
684
+ export declare enum ErrorTooManyRequestsType {
685
+ TooManyRequests = "too_many_requests"
686
+ }
687
+ /** error-unauthorized */
688
+ export type ErrorUnauthorized = ErrorBase & ErrorUnauthorizedUnauthenticated & {
689
+ type: ErrorUnauthorizedType;
690
+ };
691
+ export declare enum ErrorUnauthorizedType {
692
+ Unauthenticated = "unauthenticated"
693
+ }
694
+ /** error-unauthorized-unauthenticated */
695
+ export type ErrorUnauthorizedUnauthenticated = object;
696
+ /** event-part-created */
697
+ export interface EventPartCreated {
698
+ part: Part;
699
+ }
700
+ /** event-part-deleted */
701
+ export interface EventPartDeleted {
702
+ /**
703
+ * The ID of the part that was deleted.
704
+ * @example "don:core:<partition>:devo/<dev-org-id>:<part-type>/<part-id>"
705
+ */
706
+ id: string;
707
+ }
708
+ /** event-part-updated */
709
+ export interface EventPartUpdated {
710
+ part: Part;
711
+ }
712
+ /** event-rev-org-created */
713
+ export interface EventRevOrgCreated {
714
+ rev_org: RevOrg;
715
+ }
716
+ /** event-rev-org-deleted */
717
+ export interface EventRevOrgDeleted {
718
+ /**
719
+ * The ID of the Rev organization that was deleted.
720
+ * @example "don:identity:<partition>:devo/<dev-org-id>:revo/<rev-org-id>"
721
+ */
722
+ id: string;
723
+ }
724
+ /** event-rev-org-updated */
725
+ export interface EventRevOrgUpdated {
726
+ rev_org: RevOrg;
727
+ }
728
+ /** event-rev-user-created */
729
+ export interface EventRevUserCreated {
730
+ rev_user: RevUser;
731
+ }
732
+ /** event-rev-user-deleted */
733
+ export interface EventRevUserDeleted {
734
+ /** The ID of the Rev user that was deleted. */
735
+ id: string;
736
+ }
737
+ /** event-rev-user-updated */
738
+ export interface EventRevUserUpdated {
739
+ rev_user: RevUser;
740
+ }
741
+ /** event-tag-created */
742
+ export interface EventTagCreated {
743
+ tag: Tag;
744
+ }
745
+ /** event-tag-deleted */
746
+ export interface EventTagDeleted {
747
+ /**
748
+ * The ID of the tag that was deleted.
749
+ * @example "don:core:<partition>:devo/<dev-org-id>:tag/<tag-id>"
750
+ */
751
+ id: string;
752
+ }
753
+ /** event-tag-updated */
754
+ export interface EventTagUpdated {
755
+ tag: Tag;
756
+ }
757
+ /** event-timeline-entry-created */
758
+ export interface EventTimelineEntryCreated {
759
+ entry: TimelineEntry;
760
+ }
761
+ /** event-timeline-entry-deleted */
762
+ export interface EventTimelineEntryDeleted {
763
+ /**
764
+ * The ID of the timeline entry that was deleted.
765
+ * @example "don:core:<partition>:devo/<dev-org-id>:ticket/123:timeline_event/<timeline-event-id>"
766
+ */
767
+ id: string;
768
+ }
769
+ /** event-timeline-entry-updated */
770
+ export interface EventTimelineEntryUpdated {
771
+ entry: TimelineEntry;
772
+ }
773
+ /** event-webhook-created */
774
+ export interface EventWebhookCreated {
775
+ webhook: Webhook;
776
+ }
777
+ /** event-webhook-deleted */
778
+ export interface EventWebhookDeleted {
779
+ /**
780
+ * The ID of the webhook that was deleted.
781
+ * @example "don:integration:<partition>:devo/<dev-org-id>:webhook/<webhook-id>"
782
+ */
783
+ id: string;
784
+ }
785
+ /** event-webhook-updated */
786
+ export interface EventWebhookUpdated {
787
+ webhook: Webhook;
788
+ }
789
+ /** event-work-created */
790
+ export interface EventWorkCreated {
791
+ work: Work;
792
+ }
793
+ /** event-work-deleted */
794
+ export interface EventWorkDeleted {
795
+ /**
796
+ * The ID of the work that was deleted.
797
+ * @example "don:core:<partition>:devo/<dev-org-id>:<work-type>/<work-id>"
798
+ */
799
+ id: string;
800
+ }
801
+ /** event-work-updated */
802
+ export interface EventWorkUpdated {
803
+ work: Work;
804
+ }
805
+ /**
806
+ * external-identity
807
+ * External identity of a user.
808
+ */
809
+ export type ExternalIdentity = object;
810
+ /** feature */
811
+ export type Feature = PartBase;
812
+ /** feature-summary */
813
+ export type FeatureSummary = PartBaseSummary;
814
+ /** group-summary */
815
+ export type GroupSummary = AtomBaseSummary;
816
+ /** issue */
817
+ export type Issue = WorkBase & {
818
+ /** Priority of the work based upon impact and criticality. */
819
+ priority?: IssuePriority;
820
+ };
821
+ /** Priority of the work based upon impact and criticality. */
822
+ export declare enum IssuePriority {
823
+ P0 = "p0",
824
+ P1 = "p1",
825
+ P2 = "p2",
826
+ P3 = "p3"
827
+ }
828
+ /**
829
+ * The iteration mode to use. If "after", then entries after the provided
830
+ * cursor will be returned, or if no cursor is provided, then from the
831
+ * beginning. If "before", then entries before the provided cursor will be
832
+ * returned, or if no cursor is provided, then from the end. Entries will
833
+ * always be returned in the specified sort-by order.
834
+ */
835
+ export declare enum ListMode {
836
+ After = "after",
837
+ Before = "before"
838
+ }
839
+ /** org-base */
840
+ export type OrgBase = AtomBase & {
841
+ /** Name of the Organization. */
842
+ display_name?: string;
843
+ };
844
+ /** org-base-summary */
845
+ export type OrgBaseSummary = AtomBaseSummary & {
846
+ /** Name of the Organization. */
847
+ display_name?: string;
848
+ };
849
+ /** The environment of the Org. Defaults to 'production' if not specified. */
850
+ export declare enum OrgEnvironment {
851
+ Production = "production",
852
+ Staging = "staging",
853
+ Test = "test"
854
+ }
855
+ /** org-summary */
856
+ export type OrgSummary = RevOrgSummary & {
857
+ type: OrgType;
858
+ };
859
+ export declare enum OrgType {
860
+ RevOrg = "rev_org"
861
+ }
862
+ /** part */
863
+ export type Part = (Capability | Enhancement | Feature | Product) & {
864
+ type: PartType;
865
+ };
866
+ /** part-base */
867
+ export type PartBase = AtomBase & {
868
+ /** The attached artifacts. */
869
+ artifacts?: ArtifactSummary[];
870
+ /** Description of the part. */
871
+ description?: string;
872
+ /** Name of the part. */
873
+ name: string;
874
+ /** The users that own the part. */
875
+ owned_by: UserSummary[];
876
+ /** Tags associated with the object. */
877
+ tags?: TagWithValue[];
878
+ };
879
+ /** part-base-summary */
880
+ export type PartBaseSummary = AtomBaseSummary & {
881
+ /** Name of the part. */
882
+ name: string;
883
+ };
884
+ /** part-summary */
885
+ export type PartSummary = (CapabilitySummary | EnhancementSummary | FeatureSummary | ProductSummary) & {
886
+ type: PartType;
887
+ };
888
+ export declare enum PartType {
889
+ Capability = "capability",
890
+ Enhancement = "enhancement",
891
+ Feature = "feature",
892
+ Product = "product"
893
+ }
894
+ /** parts-create-request */
895
+ export type PartsCreateRequest = (PartsCreateRequestCapability | PartsCreateRequestEnhancement | PartsCreateRequestFeature | PartsCreateRequestProduct) & {
896
+ /** Description of the part. */
897
+ description?: string;
898
+ /** Name of the part. */
899
+ name: string;
900
+ /**
901
+ * The users that own the part.
902
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:devu/<dev-user-id>"]
903
+ */
904
+ owned_by: string[];
905
+ type: PartType;
906
+ };
907
+ /** parts-create-request-capability */
908
+ export interface PartsCreateRequestCapability {
909
+ /**
910
+ * ID of the parent product for the capability.
911
+ * @maxItems 1
912
+ * @example ["don:core:<partition>:devo/<dev-org-id>:<part-type>/<part-id>"]
913
+ */
914
+ parent_part: string[];
915
+ }
916
+ /** parts-create-request-enhancement */
917
+ export interface PartsCreateRequestEnhancement {
918
+ /**
919
+ * ID of the parent part on which the enhancement is to be created.
920
+ * @maxItems 1
921
+ * @example ["don:core:<partition>:devo/<dev-org-id>:<part-type>/<part-id>"]
922
+ */
923
+ parent_part: string[];
924
+ /**
925
+ * Target close date by which enhancement is expected to be closed.
926
+ * @format date-time
927
+ */
928
+ target_close_date?: string;
929
+ }
930
+ /** parts-create-request-feature */
931
+ export interface PartsCreateRequestFeature {
932
+ /**
933
+ * ID of the parent capability/feature for the feature.
934
+ * @maxItems 1
935
+ * @example ["don:core:<partition>:devo/<dev-org-id>:<part-type>/<part-id>"]
936
+ */
937
+ parent_part: string[];
938
+ }
939
+ /** parts-create-request-product */
940
+ export type PartsCreateRequestProduct = object;
941
+ /** parts-create-response */
942
+ export interface PartsCreateResponse {
943
+ part: Part;
944
+ }
945
+ /** parts-delete-request */
946
+ export interface PartsDeleteRequest {
947
+ /**
948
+ * The ID of the part to delete.
949
+ * @example "don:core:<partition>:devo/<dev-org-id>:<part-type>/<part-id>"
950
+ */
951
+ id: string;
952
+ }
953
+ /** parts-delete-response */
954
+ export type PartsDeleteResponse = object;
955
+ /** parts-get-response */
956
+ export interface PartsGetResponse {
957
+ part: Part;
958
+ }
959
+ /** parts-list-response */
960
+ export interface PartsListResponse {
961
+ /**
962
+ * The cursor used to iterate subsequent results in accordance to the
963
+ * sort order. If not set, then no later elements exist.
964
+ */
965
+ next_cursor?: string;
966
+ /** The list of parts. */
967
+ parts: Part[];
968
+ /**
969
+ * The cursor used to iterate preceding results in accordance to the
970
+ * sort order. If not set, then no prior elements exist.
971
+ */
972
+ prev_cursor?: string;
973
+ }
974
+ /** parts-update-request */
975
+ export type PartsUpdateRequest = (PartsUpdateRequestCapability | PartsUpdateRequestEnhancement | PartsUpdateRequestFeature | PartsUpdateRequestProduct) & {
976
+ /** The updated description of the part. */
977
+ description?: string;
978
+ /**
979
+ * The ID of the part to update.
980
+ * @example "don:core:<partition>:devo/<dev-org-id>:<part-type>/<part-id>"
981
+ */
982
+ id: string;
983
+ /** The updated name of the part. */
984
+ name?: string;
985
+ owned_by?: PartsUpdateRequestOwnedBy;
986
+ type: PartType;
987
+ };
988
+ /** parts-update-request-capability */
989
+ export type PartsUpdateRequestCapability = object;
990
+ /** parts-update-request-enhancement */
991
+ export interface PartsUpdateRequestEnhancement {
992
+ /**
993
+ * Updates the target close date of the enhancement.
994
+ * @format date-time
995
+ */
996
+ target_close_date?: string;
997
+ }
998
+ /** parts-update-request-feature */
999
+ export type PartsUpdateRequestFeature = object;
1000
+ /** parts-update-request-owned-by */
1001
+ export interface PartsUpdateRequestOwnedBy {
1002
+ /**
1003
+ * Sets the owner IDs to the provided user IDs. This must not be
1004
+ * empty.
1005
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:devu/<dev-user-id>"]
1006
+ */
1007
+ set?: string[];
1008
+ }
1009
+ /** parts-update-request-product */
1010
+ export type PartsUpdateRequestProduct = object;
1011
+ /** parts-update-response */
1012
+ export interface PartsUpdateResponse {
1013
+ part: Part;
1014
+ }
1015
+ /** product */
1016
+ export type Product = PartBase;
1017
+ /** product-summary */
1018
+ export type ProductSummary = PartBaseSummary;
1019
+ /** rev-org */
1020
+ export type RevOrg = OrgBase & {
1021
+ /** Description of the Rev organization. */
1022
+ description?: string;
1023
+ /** Company's domain name. Example - 'devrev.ai'. */
1024
+ domain?: string;
1025
+ /**
1026
+ * External ref is a unique identifier for the Rev (customer)
1027
+ * organization from your primary customer system of records. If none
1028
+ * is specified, a system-generated identifier will be assigned to the
1029
+ * organization.
1030
+ */
1031
+ external_ref?: string;
1032
+ };
1033
+ /** rev-org-summary */
1034
+ export type RevOrgSummary = OrgBaseSummary;
1035
+ /**
1036
+ * rev-orgs-create-request
1037
+ * Request object to create a new Rev organization in the Dev
1038
+ * organization.
1039
+ */
1040
+ export interface RevOrgsCreateRequest {
1041
+ /** Description of the Rev organization. */
1042
+ description?: string;
1043
+ /** Name of the Rev organization. */
1044
+ display_name: string;
1045
+ /** Company's domain name. Example - 'devrev.ai'. */
1046
+ domain?: string;
1047
+ /** The environment of the Org. Defaults to 'production' if not specified. */
1048
+ environment?: OrgEnvironment;
1049
+ /**
1050
+ * External ref is a custom unique identifier which is a reference to
1051
+ * an unique id for this organization's data in some system of
1052
+ * records.
1053
+ */
1054
+ external_ref?: string;
1055
+ /** The tier of the RevOrg. */
1056
+ tier?: string;
1057
+ }
1058
+ /**
1059
+ * rev-orgs-create-response
1060
+ * Response object for request to create a new Rev organization.
1061
+ */
1062
+ export interface RevOrgsCreateResponse {
1063
+ rev_org: RevOrg;
1064
+ }
1065
+ /**
1066
+ * rev-orgs-delete-request
1067
+ * Request object to delete a Rev organization.
1068
+ */
1069
+ export interface RevOrgsDeleteRequest {
1070
+ /**
1071
+ * The ID of Rev organization to delete.
1072
+ * @example "don:identity:<partition>:devo/<dev-org-id>:revo/<rev-org-id>"
1073
+ */
1074
+ id: string;
1075
+ }
1076
+ /**
1077
+ * rev-orgs-delete-response
1078
+ * The response to deleting a Rev organization.
1079
+ */
1080
+ export type RevOrgsDeleteResponse = object;
1081
+ /**
1082
+ * rev-orgs-get-response
1083
+ * The response to getting a Rev organization's information.
1084
+ */
1085
+ export interface RevOrgsGetResponse {
1086
+ rev_org: RevOrg;
1087
+ }
1088
+ /**
1089
+ * rev-orgs-list-response
1090
+ * The response to getting a list of Rev organizations' information.
1091
+ */
1092
+ export interface RevOrgsListResponse {
1093
+ /**
1094
+ * The cursor used to iterate subsequent results in accordance to the
1095
+ * sort order. If not set, then no later elements exist.
1096
+ */
1097
+ next_cursor?: string;
1098
+ /**
1099
+ * The cursor used to iterate preceding results in accordance to the
1100
+ * sort order. If not set, then no prior elements exist.
1101
+ */
1102
+ prev_cursor?: string;
1103
+ /** List with all of the Rev organizations' information. */
1104
+ rev_orgs: RevOrg[];
1105
+ }
1106
+ /**
1107
+ * rev-orgs-update-request
1108
+ * Request object to update information of the Rev organization.
1109
+ */
1110
+ export interface RevOrgsUpdateRequest {
1111
+ /** Description of the Rev organization. */
1112
+ description?: string;
1113
+ /** Customer chosen name for the Rev organization. */
1114
+ display_name?: string;
1115
+ /** Company's domain name. Example - 'devrev.ai'. */
1116
+ domain?: string;
1117
+ /** The environment of the Org. Defaults to 'production' if not specified. */
1118
+ environment?: OrgEnvironment;
1119
+ /**
1120
+ * External ref is a custom unique identifier which is a reference to
1121
+ * an unique id for this organization's data in some system of
1122
+ * records.
1123
+ */
1124
+ external_ref?: string;
1125
+ /**
1126
+ * The ID of Rev organization to update.
1127
+ * @example "don:identity:<partition>:devo/<dev-org-id>:revo/<rev-org-id>"
1128
+ */
1129
+ id: string;
1130
+ /** The tier of the RevOrg. */
1131
+ tier?: string;
1132
+ }
1133
+ /**
1134
+ * rev-orgs-update-response
1135
+ * Response object to updating Rev organization's information.
1136
+ */
1137
+ export interface RevOrgsUpdateResponse {
1138
+ rev_org: RevOrg;
1139
+ }
1140
+ /** rev-user */
1141
+ export type RevUser = UserBase & {
1142
+ /** Description of the Rev user. */
1143
+ description?: string;
1144
+ /**
1145
+ * External ref is a mutable unique identifier for a user within the
1146
+ * Rev organization from your primary customer record. If none is
1147
+ * available, a good alternative is the email address/phone number
1148
+ * which could uniquely identify the user. If none is specified, a
1149
+ * system-generated identifier will be assigned to the user.
1150
+ */
1151
+ external_ref?: string;
1152
+ rev_org?: OrgSummary;
1153
+ };
1154
+ /** rev-user-summary */
1155
+ export type RevUserSummary = UserBaseSummary & {
1156
+ /**
1157
+ * External ref is a mutable unique identifier for a user within the
1158
+ * Rev organization from your primary customer record. If none is
1159
+ * available, a good alternative is the email address/phone number
1160
+ * which could uniquely identify the user. If none is specified, a
1161
+ * system-generated identifier will be assigned to the user.
1162
+ */
1163
+ external_ref?: string;
1164
+ rev_org?: OrgSummary;
1165
+ };
1166
+ /** set-tag-with-value */
1167
+ export interface SetTagWithValue {
1168
+ /**
1169
+ * The ID of the tag.
1170
+ * @example "don:core:<partition>:devo/<dev-org-id>:tag/<tag-id>"
1171
+ */
1172
+ id: string;
1173
+ /**
1174
+ * The value for the object's association with the tag. If specified,
1175
+ * the value must be one that's specified in the tag's allowed values.
1176
+ */
1177
+ value?: string;
1178
+ }
1179
+ /**
1180
+ * stage
1181
+ * Describes the current stage of a work item.
1182
+ */
1183
+ export interface Stage {
1184
+ /** Current stage name of the work item. */
1185
+ name: string;
1186
+ }
1187
+ /**
1188
+ * stage-init
1189
+ * Sets an object's initial stage.
1190
+ */
1191
+ export interface StageInit {
1192
+ /** The name of the stage. */
1193
+ name?: string;
1194
+ }
1195
+ /**
1196
+ * stage-update
1197
+ * Updates an object's stage.
1198
+ */
1199
+ export interface StageUpdate {
1200
+ /** The updated name of the stage, otherwise unchanged if not set. */
1201
+ name?: string;
1202
+ }
1203
+ /** sys-user-summary */
1204
+ export type SysUserSummary = UserBaseSummary;
1205
+ /** tag */
1206
+ export type Tag = AtomBase & {
1207
+ /**
1208
+ * The allowed values for the tag, where a value is provided when a
1209
+ * tag is associated with an object. If empty, then no value should be
1210
+ * provided when the association is made.
1211
+ */
1212
+ allowed_values?: string[];
1213
+ /**
1214
+ * An informative description for the tag that should provide context
1215
+ * on the tag's purpose and usage.
1216
+ */
1217
+ description?: string;
1218
+ /**
1219
+ * The name of the tag, which denotes the logical concept by which all
1220
+ * tagged objects will be associated. The name is guaranteed to be
1221
+ * unique.
1222
+ */
1223
+ name: string;
1224
+ };
1225
+ /** tag-summary */
1226
+ export type TagSummary = AtomBaseSummary & {
1227
+ /**
1228
+ * The name of the tag, which denotes the logical concept by which all
1229
+ * tagged objects will be associated. The name is guaranteed to be
1230
+ * unique.
1231
+ */
1232
+ name: string;
1233
+ };
1234
+ /** tag-with-value */
1235
+ export interface TagWithValue {
1236
+ tag: TagSummary;
1237
+ /** The value for the object's association with the tag. */
1238
+ value?: string;
1239
+ }
1240
+ /**
1241
+ * tags-create-request
1242
+ * The request to create a new tag.
1243
+ */
1244
+ export interface TagsCreateRequest {
1245
+ /**
1246
+ * The allowed values for the tag, or empty if no values are
1247
+ * permitted.
1248
+ */
1249
+ allowed_values?: string[];
1250
+ /** The description for the tag. */
1251
+ description?: string;
1252
+ /** The name for the tag, which must be unique across all tags. */
1253
+ name: string;
1254
+ }
1255
+ /**
1256
+ * tags-create-response
1257
+ * The response to creating a new tag.
1258
+ */
1259
+ export interface TagsCreateResponse {
1260
+ tag: Tag;
1261
+ }
1262
+ /**
1263
+ * tags-delete-request
1264
+ * The request to delete a tag.
1265
+ */
1266
+ export interface TagsDeleteRequest {
1267
+ /**
1268
+ * The ID of the tag to delete.
1269
+ * @example "don:core:<partition>:devo/<dev-org-id>:tag/<tag-id>"
1270
+ */
1271
+ id: string;
1272
+ }
1273
+ /**
1274
+ * tags-delete-response
1275
+ * The response for deleting a tag.
1276
+ */
1277
+ export type TagsDeleteResponse = object;
1278
+ /**
1279
+ * tags-get-response
1280
+ * The response to getting a tag's information.
1281
+ */
1282
+ export interface TagsGetResponse {
1283
+ tag: Tag;
1284
+ }
1285
+ /**
1286
+ * tags-list-response
1287
+ * The response to listing the tags.
1288
+ */
1289
+ export interface TagsListResponse {
1290
+ /**
1291
+ * The cursor used to iterate subsequent results in accordance to the
1292
+ * sort order. If not set, then no later elements exist.
1293
+ */
1294
+ next_cursor?: string;
1295
+ /**
1296
+ * The cursor used to iterate preceding results in accordance to the
1297
+ * sort order. If not set, then no prior elements exist.
1298
+ */
1299
+ prev_cursor?: string;
1300
+ /** The list of tags. */
1301
+ tags: Tag[];
1302
+ }
1303
+ /**
1304
+ * tags-update-allowed-values
1305
+ * Specifies an update to a tag's allowed values.
1306
+ */
1307
+ export interface TagsUpdateAllowedValues {
1308
+ /** Sets the allowed values for the tag. */
1309
+ set?: string[];
1310
+ }
1311
+ /**
1312
+ * tags-update-request
1313
+ * The request to update a tag.
1314
+ */
1315
+ export interface TagsUpdateRequest {
1316
+ /** Specifies an update to a tag's allowed values. */
1317
+ allowed_values?: TagsUpdateAllowedValues;
1318
+ /** The updated description of the tag. */
1319
+ description?: string;
1320
+ /**
1321
+ * The ID of the tag to update.
1322
+ * @example "don:core:<partition>:devo/<dev-org-id>:tag/<tag-id>"
1323
+ */
1324
+ id: string;
1325
+ /**
1326
+ * The updated name of the tag. The name must be unique across all
1327
+ * tags.
1328
+ */
1329
+ name?: string;
1330
+ }
1331
+ /**
1332
+ * tags-update-response
1333
+ * The response for updating a tag.
1334
+ */
1335
+ export interface TagsUpdateResponse {
1336
+ tag: Tag;
1337
+ }
1338
+ /** ticket */
1339
+ export type Ticket = WorkBase & {
1340
+ group?: GroupSummary;
1341
+ rev_org?: OrgSummary;
1342
+ /** Severity of the ticket. */
1343
+ severity?: TicketSeverity;
1344
+ };
1345
+ /** Severity of the ticket. */
1346
+ export declare enum TicketSeverity {
1347
+ Blocker = "blocker",
1348
+ High = "high",
1349
+ Low = "low",
1350
+ Medium = "medium"
1351
+ }
1352
+ /** timeline-comment */
1353
+ export type TimelineComment = TimelineEntryBase & {
1354
+ /** The artifacts for the comment. */
1355
+ artifacts?: ArtifactSummary[];
1356
+ /**
1357
+ * The comment's body. If the comment has been deleted, then no body
1358
+ * will appear in the response.
1359
+ */
1360
+ body?: string;
1361
+ /** The type of the body to use for the comment. */
1362
+ body_type?: TimelineCommentBodyType;
1363
+ /** Snap Kit Body of the comment. */
1364
+ snap_kit_body?: TimelineSnapKitBody;
1365
+ };
1366
+ /** The type of the body to use for the comment. */
1367
+ export declare enum TimelineCommentBodyType {
1368
+ SnapKit = "snap_kit",
1369
+ Text = "text"
1370
+ }
1371
+ /**
1372
+ * timeline-entries-create-request
1373
+ * The request to create a timeline entry for an object.
1374
+ */
1375
+ export type TimelineEntriesCreateRequest = TimelineEntriesCreateRequestTimelineComment & {
1376
+ /**
1377
+ * If set, then the entry is ephemeral and will be deleted after the
1378
+ * provided time. The minimum value should be at least a minute more
1379
+ * than the current timestamp.
1380
+ * @format date-time
1381
+ */
1382
+ expires_at?: string;
1383
+ /**
1384
+ * The ID of the object to create the timeline entry for.
1385
+ * @example "don:core:<partition>:devo/<dev-org-id>:<part-type>/<part-id>"
1386
+ */
1387
+ object: string;
1388
+ /**
1389
+ * If the visibility of the entry is private, this specifies the users
1390
+ * that the entry is private to. Note the creator is always implicitly
1391
+ * included in this list.
1392
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:devu/<dev-user-id>"]
1393
+ */
1394
+ private_to?: string[];
1395
+ type: TimelineEntriesCreateRequestType;
1396
+ /**
1397
+ * The visibility of the entry. If 'private', then the entry is only
1398
+ * visible to the creator, 'internal' is visible with the Dev
1399
+ * organization, 'external' is visible to the Dev organzation and Rev
1400
+ * users, and 'public' is visible to all. If not set, then the default
1401
+ * visibility is 'external'.
1402
+ */
1403
+ visibility?: TimelineEntryVisibility;
1404
+ };
1405
+ /** timeline-entries-create-request-timeline-comment */
1406
+ export interface TimelineEntriesCreateRequestTimelineComment {
1407
+ /**
1408
+ * The IDs of the artifacts attached to the comment.
1409
+ * @example ["don:core:<partition>:devo/<dev-org-id>:artifact/<artifact-id>"]
1410
+ */
1411
+ artifacts?: string[];
1412
+ /** The comment's body. */
1413
+ body?: string;
1414
+ /** The type of the body to use for the comment. */
1415
+ body_type?: TimelineCommentBodyType;
1416
+ /** Snap Kit Body of the comment. */
1417
+ snap_kit_body?: TimelineSnapKitBody;
1418
+ }
1419
+ export declare enum TimelineEntriesCreateRequestType {
1420
+ TimelineComment = "timeline_comment"
1421
+ }
1422
+ /**
1423
+ * timeline-entries-create-response
1424
+ * The response to creating a timeline entry for an object.
1425
+ */
1426
+ export interface TimelineEntriesCreateResponse {
1427
+ timeline_entry: TimelineEntry;
1428
+ }
1429
+ /**
1430
+ * timeline-entries-delete-request
1431
+ * The request to delete a timeline entry from an object.
1432
+ */
1433
+ export interface TimelineEntriesDeleteRequest {
1434
+ /**
1435
+ * The ID of the timeline entry to delete.
1436
+ * @example "don:core:<partition>:devo/<dev-org-id>:ticket/123:timeline_event/<timeline-event-id>"
1437
+ */
1438
+ id: string;
1439
+ }
1440
+ /**
1441
+ * timeline-entries-delete-response
1442
+ * The response to deleting a timeline entry from an object.
1443
+ */
1444
+ export type TimelineEntriesDeleteResponse = object;
1445
+ /**
1446
+ * timeline-entries-get-response
1447
+ * The request to getting a timeline entry.
1448
+ */
1449
+ export interface TimelineEntriesGetResponse {
1450
+ timeline_entry: TimelineEntry;
1451
+ }
1452
+ /**
1453
+ * timeline-entries-list-response
1454
+ * The response to listing timeline entries for an object.
1455
+ */
1456
+ export interface TimelineEntriesListResponse {
1457
+ /**
1458
+ * The cursor used to iterate subsequent results in accordance to the
1459
+ * sort order. If not set, then no later elements exist.
1460
+ */
1461
+ next_cursor?: string;
1462
+ /**
1463
+ * The cursor used to iterate preceding results in accordance to the
1464
+ * sort order. If not set, then no prior elements exist.
1465
+ */
1466
+ prev_cursor?: string;
1467
+ /** The timeline entries for the object. */
1468
+ timeline_entries: TimelineEntry[];
1469
+ }
1470
+ /**
1471
+ * timeline-entries-update-request
1472
+ * The request to update a timeline entry.
1473
+ */
1474
+ export type TimelineEntriesUpdateRequest = TimelineEntriesUpdateRequestTimelineComment & {
1475
+ /**
1476
+ * The ID of the timeline entry to update.
1477
+ * @example "don:core:<partition>:devo/<dev-org-id>:ticket/123:timeline_event/<timeline-event-id>"
1478
+ */
1479
+ id: string;
1480
+ type: TimelineEntriesUpdateRequestType;
1481
+ };
1482
+ /** timeline-entries-update-request-timeline-comment */
1483
+ export interface TimelineEntriesUpdateRequestTimelineComment {
1484
+ artifacts?: TimelineEntriesUpdateRequestTimelineCommentArtifacts;
1485
+ /** The updated comment's body. */
1486
+ body?: string;
1487
+ /** The type of the body to use for the comment. */
1488
+ body_type?: TimelineCommentBodyType;
1489
+ /** Snap Kit Body of the comment. */
1490
+ snap_kit_body?: TimelineSnapKitBody;
1491
+ }
1492
+ /** timeline-entries-update-request-timeline-comment-artifacts */
1493
+ export interface TimelineEntriesUpdateRequestTimelineCommentArtifacts {
1494
+ /**
1495
+ * Adds the provided artifacts to the comment. An artifact cannot be
1496
+ * added more than once, i.e. nothing is done if the artifact is
1497
+ * already attached. Mutually exclusive with `set`.
1498
+ * @example ["don:core:<partition>:devo/<dev-org-id>:artifact/<artifact-id>"]
1499
+ */
1500
+ add?: string[];
1501
+ /**
1502
+ * Removes the provided artifacts from the comment. If an artifact is
1503
+ * not present, then it's ignored. Mututally exclusive with `set`.
1504
+ * @example ["don:core:<partition>:devo/<dev-org-id>:artifact/<artifact-id>"]
1505
+ */
1506
+ remove?: string[];
1507
+ /**
1508
+ * Sets the field to the provided artifacts.
1509
+ * @example ["don:core:<partition>:devo/<dev-org-id>:artifact/<artifact-id>"]
1510
+ */
1511
+ set?: string[];
1512
+ }
1513
+ export declare enum TimelineEntriesUpdateRequestType {
1514
+ TimelineComment = "timeline_comment"
1515
+ }
1516
+ /**
1517
+ * timeline-entries-update-response
1518
+ * The response to updating a timeline entry.
1519
+ */
1520
+ export interface TimelineEntriesUpdateResponse {
1521
+ timeline_entry: TimelineEntry;
1522
+ }
1523
+ /** timeline-entry */
1524
+ export type TimelineEntry = TimelineComment & {
1525
+ type: TimelineEntryType;
1526
+ };
1527
+ /** timeline-entry-base */
1528
+ export type TimelineEntryBase = AtomBase & {
1529
+ /** The object that the Timeline entry belongs to. */
1530
+ object: string;
1531
+ /** The type of object that the Timeline entry belongs to. */
1532
+ object_type?: TimelineEntryObjectType;
1533
+ };
1534
+ /** The type of object that the Timeline entry belongs to. */
1535
+ export declare enum TimelineEntryObjectType {
1536
+ Capability = "capability",
1537
+ Conversation = "conversation",
1538
+ Enhancement = "enhancement",
1539
+ Feature = "feature",
1540
+ Issue = "issue",
1541
+ Product = "product",
1542
+ RevOrg = "rev_org",
1543
+ RevUser = "rev_user",
1544
+ Ticket = "ticket",
1545
+ TimelineComment = "timeline_comment"
1546
+ }
1547
+ export declare enum TimelineEntryType {
1548
+ TimelineComment = "timeline_comment"
1549
+ }
1550
+ /**
1551
+ * The visibility of the entry. If 'private', then the entry is only
1552
+ * visible to the creator, 'internal' is visible with the Dev
1553
+ * organization, 'external' is visible to the Dev organzation and Rev
1554
+ * users, and 'public' is visible to all. If not set, then the default
1555
+ * visibility is 'external'.
1556
+ */
1557
+ export declare enum TimelineEntryVisibility {
1558
+ External = "external",
1559
+ Internal = "internal",
1560
+ Private = "private",
1561
+ Public = "public"
1562
+ }
1563
+ /**
1564
+ * timeline-snap-kit-body
1565
+ * Snap Kit Body of the comment.
1566
+ */
1567
+ export interface TimelineSnapKitBody {
1568
+ /** The JSON body of the SnapKit. */
1569
+ body?: object;
1570
+ /**
1571
+ * The name of an action defined in the SnapIn. The combination of
1572
+ * snap_in_id and snap_in_action_name uniquely identifies the
1573
+ * interaction object which is to be called when actions on a snapkit
1574
+ * element is taken.
1575
+ */
1576
+ snap_in_action_name?: string;
1577
+ /** ID of the snap-in which created the SnapKit. */
1578
+ snap_in_id?: string;
1579
+ }
1580
+ /** user-base */
1581
+ export type UserBase = AtomBase & {
1582
+ /** The user's display name. The name is non-unique and mutable. */
1583
+ display_name?: string;
1584
+ display_picture?: ArtifactSummary;
1585
+ /** Email address of the user. */
1586
+ email?: string;
1587
+ /** Full name of the user. */
1588
+ full_name?: string;
1589
+ /** Phone numbers of the user. */
1590
+ phone_numbers?: string[];
1591
+ /** State of the user. */
1592
+ state?: UserState;
1593
+ };
1594
+ /** user-base-summary */
1595
+ export type UserBaseSummary = AtomBaseSummary & {
1596
+ /** The user's display name. The name is non-unique and mutable. */
1597
+ display_name?: string;
1598
+ display_picture?: ArtifactSummary;
1599
+ /** Email address of the user. */
1600
+ email?: string;
1601
+ /** Full name of the user. */
1602
+ full_name?: string;
1603
+ /** State of the user. */
1604
+ state?: UserState;
1605
+ };
1606
+ /** State of the user. */
1607
+ export declare enum UserState {
1608
+ Active = "active",
1609
+ Deactivated = "deactivated",
1610
+ Locked = "locked",
1611
+ Shadow = "shadow",
1612
+ Unassigned = "unassigned"
1613
+ }
1614
+ /** user-summary */
1615
+ export type UserSummary = (DevUserSummary | RevUserSummary | SysUserSummary) & {
1616
+ type: UserType;
1617
+ };
1618
+ export declare enum UserType {
1619
+ DevUser = "dev_user",
1620
+ RevUser = "rev_user",
1621
+ SysUser = "sys_user"
1622
+ }
1623
+ /** webhook */
1624
+ export type Webhook = AtomBase & {
1625
+ /** The event types that the webhook will receive. */
1626
+ event_types?: WebhookEventType[];
1627
+ /**
1628
+ * The secret to use for verifying webhook events.
1629
+ * @format byte
1630
+ */
1631
+ secret: string;
1632
+ /** The status of the webhook. */
1633
+ status: WebhookStatus;
1634
+ /** The URL of the webhook endpoint. */
1635
+ url: string;
1636
+ };
1637
+ /** webhook-event-request */
1638
+ export interface WebhookEventRequest {
1639
+ /** The event's ID. */
1640
+ id: string;
1641
+ part_created?: EventPartCreated;
1642
+ part_deleted?: EventPartDeleted;
1643
+ part_updated?: EventPartUpdated;
1644
+ rev_org_created?: EventRevOrgCreated;
1645
+ rev_org_deleted?: EventRevOrgDeleted;
1646
+ rev_org_updated?: EventRevOrgUpdated;
1647
+ rev_user_created?: EventRevUserCreated;
1648
+ rev_user_deleted?: EventRevUserDeleted;
1649
+ rev_user_updated?: EventRevUserUpdated;
1650
+ tag_created?: EventTagCreated;
1651
+ tag_deleted?: EventTagDeleted;
1652
+ tag_updated?: EventTagUpdated;
1653
+ timeline_entry_created?: EventTimelineEntryCreated;
1654
+ timeline_entry_deleted?: EventTimelineEntryDeleted;
1655
+ timeline_entry_updated?: EventTimelineEntryUpdated;
1656
+ /**
1657
+ * Timestamp of the webhook's invocation for the event. Note this
1658
+ * should be used to protect against replay attacks, where the event
1659
+ * should only be processed if the timestamp isn't stale by several
1660
+ * seconds.
1661
+ * @format date-time
1662
+ */
1663
+ timestamp?: string;
1664
+ /** The event types that the webhook will receive. */
1665
+ type?: WebhookEventType;
1666
+ verify?: WebhookEventVerify;
1667
+ webhook_created?: EventWebhookCreated;
1668
+ webhook_deleted?: EventWebhookDeleted;
1669
+ /**
1670
+ * ID of the webhook for the event.
1671
+ * @example "don:integration:<partition>:devo/<dev-org-id>:webhook/<webhook-id>"
1672
+ */
1673
+ webhook_id: string;
1674
+ webhook_updated?: EventWebhookUpdated;
1675
+ work_created?: EventWorkCreated;
1676
+ work_deleted?: EventWorkDeleted;
1677
+ work_updated?: EventWorkUpdated;
1678
+ }
1679
+ /** webhook-event-response */
1680
+ export interface WebhookEventResponse {
1681
+ /**
1682
+ * The challenge from the "verify" request, otherwise this should not
1683
+ * be set for other request types.
1684
+ * @format byte
1685
+ */
1686
+ challenge?: string;
1687
+ }
1688
+ /** The event types that the webhook will receive. */
1689
+ export declare enum WebhookEventType {
1690
+ PartCreated = "part_created",
1691
+ PartDeleted = "part_deleted",
1692
+ PartUpdated = "part_updated",
1693
+ RevOrgCreated = "rev_org_created",
1694
+ RevOrgDeleted = "rev_org_deleted",
1695
+ RevOrgUpdated = "rev_org_updated",
1696
+ RevUserCreated = "rev_user_created",
1697
+ RevUserDeleted = "rev_user_deleted",
1698
+ RevUserUpdated = "rev_user_updated",
1699
+ TagCreated = "tag_created",
1700
+ TagDeleted = "tag_deleted",
1701
+ TagUpdated = "tag_updated",
1702
+ TimelineEntryCreated = "timeline_entry_created",
1703
+ TimelineEntryDeleted = "timeline_entry_deleted",
1704
+ TimelineEntryUpdated = "timeline_entry_updated",
1705
+ Verify = "verify",
1706
+ WebhookCreated = "webhook_created",
1707
+ WebhookDeleted = "webhook_deleted",
1708
+ WebhookUpdated = "webhook_updated",
1709
+ WorkCreated = "work_created",
1710
+ WorkDeleted = "work_deleted",
1711
+ WorkUpdated = "work_updated"
1712
+ }
1713
+ /** webhook-event-verify */
1714
+ export interface WebhookEventVerify {
1715
+ /**
1716
+ * The challenge that must be echoed in the response.
1717
+ * @format byte
1718
+ */
1719
+ challenge: string;
1720
+ }
1721
+ /** The status of the webhook. */
1722
+ export declare enum WebhookStatus {
1723
+ Active = "active",
1724
+ Inactive = "inactive",
1725
+ Unverified = "unverified"
1726
+ }
1727
+ /**
1728
+ * webhooks-create-request
1729
+ * The request to create a new webhook.
1730
+ */
1731
+ export interface WebhooksCreateRequest {
1732
+ /** The event types that the webhook endpoint will receive. */
1733
+ event_types?: WebhookEventType[];
1734
+ /**
1735
+ * The secret to use when verifying webhook events. If provided, the
1736
+ * secret must be between 8 and 32 bytes (inclusive). If not set, a
1737
+ * secret will be automatically generated and provided in the
1738
+ * response.
1739
+ * @format byte
1740
+ */
1741
+ secret?: string;
1742
+ /** The URL of the webhook endpoint. */
1743
+ url: string;
1744
+ }
1745
+ /**
1746
+ * webhooks-create-response
1747
+ * The response to creating a new webhook.
1748
+ */
1749
+ export interface WebhooksCreateResponse {
1750
+ webhook: Webhook;
1751
+ }
1752
+ /**
1753
+ * webhooks-delete-request
1754
+ * The request to delete a webhook.
1755
+ */
1756
+ export interface WebhooksDeleteRequest {
1757
+ /**
1758
+ * ID for the webhook.
1759
+ * @example "don:integration:<partition>:devo/<dev-org-id>:webhook/<webhook-id>"
1760
+ */
1761
+ id: string;
1762
+ }
1763
+ /**
1764
+ * webhooks-delete-response
1765
+ * The response to deleting the webhook.
1766
+ */
1767
+ export type WebhooksDeleteResponse = object;
1768
+ /**
1769
+ * webhooks-get-response
1770
+ * The response to getting the information for the webhook.
1771
+ */
1772
+ export interface WebhooksGetResponse {
1773
+ webhook: Webhook;
1774
+ }
1775
+ /**
1776
+ * webhooks-list-response
1777
+ * The response to listing the webhooks.
1778
+ */
1779
+ export interface WebhooksListResponse {
1780
+ /** The list of webhooks. */
1781
+ webhooks: Webhook[];
1782
+ }
1783
+ /** The action to update the webhook's status. */
1784
+ export declare enum WebhooksUpdateAction {
1785
+ Activate = "activate",
1786
+ Deactivate = "deactivate"
1787
+ }
1788
+ /**
1789
+ * webhooks-update-request
1790
+ * The request to update a webhook.
1791
+ */
1792
+ export interface WebhooksUpdateRequest {
1793
+ /** The action to update the webhook's status. */
1794
+ action?: WebhooksUpdateAction;
1795
+ event_types?: WebhooksUpdateRequestEventTypes;
1796
+ /**
1797
+ * ID for the webhook.
1798
+ * @example "don:integration:<partition>:devo/<dev-org-id>:webhook/<webhook-id>"
1799
+ */
1800
+ id: string;
1801
+ /**
1802
+ * If provided, updates the secret that's used when verifying webhook
1803
+ * events, which must be between 8 and 32 bytes (inclusive). Otherwise
1804
+ * if empty, then a new secret is generated. If the webhook is active,
1805
+ * then its status will transition to the 'unverified' state and it
1806
+ * won't receive any object events until successfully verified.
1807
+ * @format byte
1808
+ */
1809
+ secret?: string;
1810
+ /**
1811
+ * The webhook's updated URL. If the webhook is active, then the
1812
+ * webhook's status will transition to the 'unverified' state and it
1813
+ * won't receive any object events until successfully verified.
1814
+ */
1815
+ url?: string;
1816
+ }
1817
+ /** webhooks-update-request-event-types */
1818
+ export interface WebhooksUpdateRequestEventTypes {
1819
+ /**
1820
+ * The event types to add. If a provided event type is already set for
1821
+ * the webhook, then nothing is done. Note this is mutually exclusive
1822
+ * with 'set'.
1823
+ */
1824
+ add?: WebhookEventType[];
1825
+ /**
1826
+ * The event types to remove. If a provided event type isn't set for
1827
+ * the webhook, then nothing is done. Note this is mutually exclusive
1828
+ * with 'set'.
1829
+ */
1830
+ remove?: WebhookEventType[];
1831
+ /**
1832
+ * The updated event types, which will replace the webhook's current
1833
+ * event types. Note this is mutually exclusive with 'add' and
1834
+ * 'remove'.
1835
+ */
1836
+ set?: WebhookEventType[];
1837
+ }
1838
+ /**
1839
+ * webhooks-update-response
1840
+ * The response to updating the webhook.
1841
+ */
1842
+ export interface WebhooksUpdateResponse {
1843
+ webhook: Webhook;
1844
+ }
1845
+ /** work */
1846
+ export type Work = (Issue | Ticket) & {
1847
+ type: WorkType;
1848
+ };
1849
+ /** work-base */
1850
+ export type WorkBase = AtomBase & {
1851
+ applies_to_part?: PartSummary;
1852
+ /** The artifacts attached to the work item. */
1853
+ artifacts?: ArtifactSummary[];
1854
+ /** Body of the work object. */
1855
+ body?: string;
1856
+ /** The users that own the work. */
1857
+ owned_by: UserSummary[];
1858
+ /** Users that reported the work. */
1859
+ reported_by?: UserSummary[];
1860
+ /** Describes the current stage of a work item. */
1861
+ stage?: Stage;
1862
+ /** Tags associated with the object. */
1863
+ tags?: TagWithValue[];
1864
+ /**
1865
+ * Timestamp when the work is expected to be complete.
1866
+ * @format date-time
1867
+ */
1868
+ target_close_date?: string;
1869
+ /** Title of the work object. */
1870
+ title: string;
1871
+ };
1872
+ export declare enum WorkType {
1873
+ Issue = "issue",
1874
+ Ticket = "ticket"
1875
+ }
1876
+ /** works-create-request */
1877
+ export type WorksCreateRequest = (WorksCreateRequestIssue | WorksCreateRequestTicket) & {
1878
+ /**
1879
+ * The [part](https://devrev.ai/docs/product/parts) that the work
1880
+ * applies to. Specifying a part is required when creating tickets and
1881
+ * issues.
1882
+ * @example "don:core:<partition>:devo/<dev-org-id>:<part-type>/<part-id>"
1883
+ */
1884
+ applies_to_part: string;
1885
+ /**
1886
+ * The IDs of the artifacts to associate with the work item.
1887
+ * @example ["don:core:<partition>:devo/<dev-org-id>:artifact/<artifact-id>"]
1888
+ */
1889
+ artifacts?: string[];
1890
+ /** Body of the work object. */
1891
+ body?: string;
1892
+ /**
1893
+ * The users that own the work.
1894
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:devu/<dev-user-id>"]
1895
+ */
1896
+ owned_by: string[];
1897
+ /**
1898
+ * The users that reported the work.
1899
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:devu/<dev-user-id>"]
1900
+ */
1901
+ reported_by?: string[];
1902
+ /** Sets an object's initial stage. */
1903
+ stage?: StageInit;
1904
+ /** Tags associated with the work item. */
1905
+ tags?: SetTagWithValue[];
1906
+ /**
1907
+ * Timestamp for when the work is expected to be complete.
1908
+ * @format date-time
1909
+ */
1910
+ target_close_date?: string;
1911
+ /** Title of the work object. */
1912
+ title: string;
1913
+ type: WorkType;
1914
+ };
1915
+ /** works-create-request-issue */
1916
+ export interface WorksCreateRequestIssue {
1917
+ /** Priority of the work based upon impact and criticality. */
1918
+ priority?: IssuePriority;
1919
+ /** The sprint that the issue belongs to. */
1920
+ sprint?: string;
1921
+ }
1922
+ /** works-create-request-ticket */
1923
+ export interface WorksCreateRequestTicket {
1924
+ /** The group that the ticket is associated with. */
1925
+ group?: string;
1926
+ /** Whether the ticket is spam. */
1927
+ is_spam?: boolean;
1928
+ /**
1929
+ * The Rev organization that the ticket is associated with.
1930
+ * @example "don:identity:<partition>:devo/<dev-org-id>:revo/<rev-org-id>"
1931
+ */
1932
+ rev_org?: string;
1933
+ /** Severity of the ticket. */
1934
+ severity?: TicketSeverity;
1935
+ /** The source channel of the ticket. */
1936
+ source_channel?: string;
1937
+ }
1938
+ /** works-create-response */
1939
+ export interface WorksCreateResponse {
1940
+ work: Work;
1941
+ }
1942
+ /** works-delete-request */
1943
+ export interface WorksDeleteRequest {
1944
+ /**
1945
+ * The work's ID.
1946
+ * @example "don:core:<partition>:devo/<dev-org-id>:<work-type>/<work-id>"
1947
+ */
1948
+ id: string;
1949
+ }
1950
+ /** works-delete-response */
1951
+ export type WorksDeleteResponse = object;
1952
+ /** works-export-response */
1953
+ export interface WorksExportResponse {
1954
+ /** The resulting collection of work items. */
1955
+ works: Work[];
1956
+ }
1957
+ /** works-get-response */
1958
+ export interface WorksGetResponse {
1959
+ work: Work;
1960
+ }
1961
+ /** works-list-response */
1962
+ export interface WorksListResponse {
1963
+ /**
1964
+ * The cursor used to iterate subsequent results in accordance to the
1965
+ * sort order. If not set, then no later elements exist.
1966
+ */
1967
+ next_cursor?: string;
1968
+ /**
1969
+ * The cursor used to iterate preceding results in accordance to the
1970
+ * sort order. If not set, then no prior elements exist.
1971
+ */
1972
+ prev_cursor?: string;
1973
+ /** The list of works. */
1974
+ works: Work[];
1975
+ }
1976
+ /** works-update-request */
1977
+ export type WorksUpdateRequest = (WorksUpdateRequestIssue | WorksUpdateRequestTicket) & {
1978
+ /**
1979
+ * Updates the part that the work applies to.
1980
+ * @example "don:core:<partition>:devo/<dev-org-id>:<part-type>/<part-id>"
1981
+ */
1982
+ applies_to_part?: string;
1983
+ artifacts?: WorksUpdateRequestArtifactIds;
1984
+ /** Updated body of the work object, or unchanged if not provided. */
1985
+ body?: string;
1986
+ /**
1987
+ * The work's ID.
1988
+ * @example "don:core:<partition>:devo/<dev-org-id>:<work-type>/<work-id>"
1989
+ */
1990
+ id: string;
1991
+ owned_by?: WorksUpdateRequestOwnedBy;
1992
+ reported_by?: WorksUpdateRequestReportedBy;
1993
+ /** Updates an object's stage. */
1994
+ stage?: StageUpdate;
1995
+ tags?: WorksUpdateRequestTags;
1996
+ /**
1997
+ * Updates the timestamp for when the work is expected to be complete.
1998
+ * @format date-time
1999
+ */
2000
+ target_close_date?: string;
2001
+ /** Updated title of the work object, or unchanged if not provided. */
2002
+ title?: string;
2003
+ type: WorkType;
2004
+ };
2005
+ /** works-update-request-artifact-ids */
2006
+ export interface WorksUpdateRequestArtifactIds {
2007
+ /**
2008
+ * Sets the IDs to the provided artifact IDs.
2009
+ * @example ["don:core:<partition>:devo/<dev-org-id>:artifact/<artifact-id>"]
2010
+ */
2011
+ set?: string[];
2012
+ }
2013
+ /** works-update-request-issue */
2014
+ export interface WorksUpdateRequestIssue {
2015
+ /** Priority of the work based upon impact and criticality. */
2016
+ priority?: IssuePriority;
2017
+ /** Updates the sprint that the issue belongs to. */
2018
+ sprint?: string | null;
2019
+ }
2020
+ /** works-update-request-owned-by */
2021
+ export interface WorksUpdateRequestOwnedBy {
2022
+ /**
2023
+ * Sets the owner IDs to the provided user IDs. This must not be
2024
+ * empty.
2025
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:devu/<dev-user-id>"]
2026
+ */
2027
+ set?: string[];
2028
+ }
2029
+ /** works-update-request-reported-by */
2030
+ export interface WorksUpdateRequestReportedBy {
2031
+ /**
2032
+ * Sets the users that reported the work to the provided user IDs.
2033
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:devu/<dev-user-id>"]
2034
+ */
2035
+ set?: string[];
2036
+ }
2037
+ /** works-update-request-tags */
2038
+ export interface WorksUpdateRequestTags {
2039
+ /** Sets the provided tags on the work item. */
2040
+ set?: SetTagWithValue[];
2041
+ }
2042
+ /** works-update-request-ticket */
2043
+ export interface WorksUpdateRequestTicket {
2044
+ /** The group that the ticket is associated with. */
2045
+ group?: string;
2046
+ /** Updates whether the ticket is spam. */
2047
+ is_spam?: boolean;
2048
+ /**
2049
+ * Updates the Rev organization that the ticket is associated with.
2050
+ * @example "don:identity:<partition>:devo/<dev-org-id>:revo/<rev-org-id>"
2051
+ */
2052
+ rev_org?: string | null;
2053
+ /** Severity of the ticket. */
2054
+ severity?: TicketSeverity;
2055
+ }
2056
+ /** works-update-response */
2057
+ export interface WorksUpdateResponse {
2058
+ work: Work;
2059
+ }
2060
+ import { AxiosInstance, AxiosRequestConfig, AxiosResponse, ResponseType } from 'axios';
2061
+ export type QueryParamsType = Record<string | number, any>;
2062
+ export interface FullRequestParams extends Omit<AxiosRequestConfig, 'data' | 'params' | 'url' | 'responseType'> {
2063
+ /** set parameter to `true` for call `securityWorker` for this request */
2064
+ secure?: boolean;
2065
+ /** request path */
2066
+ path: string;
2067
+ /** content type of request body */
2068
+ type?: ContentType;
2069
+ /** query params */
2070
+ query?: QueryParamsType;
2071
+ /** format of response (i.e. response.json() -> format: "json") */
2072
+ format?: ResponseType;
2073
+ /** request body */
2074
+ body?: unknown;
2075
+ }
2076
+ export type RequestParams = Omit<FullRequestParams, 'body' | 'method' | 'query' | 'path'>;
2077
+ export interface ApiConfig<SecurityDataType = unknown> extends Omit<AxiosRequestConfig, 'data' | 'cancelToken'> {
2078
+ securityWorker?: (securityData: SecurityDataType | null) => Promise<AxiosRequestConfig | void> | AxiosRequestConfig | void;
2079
+ secure?: boolean;
2080
+ format?: ResponseType;
2081
+ }
2082
+ export declare enum ContentType {
2083
+ Json = "application/json",
2084
+ FormData = "multipart/form-data",
2085
+ UrlEncoded = "application/x-www-form-urlencoded",
2086
+ Text = "text/plain"
2087
+ }
2088
+ export declare class HttpClient<SecurityDataType = unknown> {
2089
+ instance: AxiosInstance;
2090
+ private securityData;
2091
+ private securityWorker?;
2092
+ private secure?;
2093
+ private format?;
2094
+ constructor({ securityWorker, secure, format, ...axiosConfig }?: ApiConfig<SecurityDataType>);
2095
+ setSecurityData: (data: SecurityDataType | null) => void;
2096
+ protected mergeRequestParams(params1: AxiosRequestConfig, params2?: AxiosRequestConfig): AxiosRequestConfig;
2097
+ protected stringifyFormItem(formItem: unknown): string;
2098
+ protected createFormData(input: Record<string, unknown>): FormData;
2099
+ request: <T = any, _E = any>({ secure, path, type, query, format, body, ...params }: FullRequestParams) => Promise<AxiosResponse<T, any>>;
2100
+ }
2101
+ /**
2102
+ * @title DevRev REST API
2103
+ * @version 2022-10-20
2104
+ * @baseUrl {protocol}://{hostname}
2105
+ *
2106
+ * DevRev's REST API.
2107
+ */
2108
+ export declare class Api<SecurityDataType extends unknown> extends HttpClient<SecurityDataType> {
2109
+ /**
2110
+ * @description Gets the download URL for the artifact.
2111
+ *
2112
+ * @tags artifacts
2113
+ * @name ArtifactsLocate
2114
+ * @request GET:/artifacts.locate
2115
+ * @secure
2116
+ */
2117
+ artifactsLocate: (query: {
2118
+ /**
2119
+ * The ID of the artifact to get the URL for.
2120
+ * @example "don:core:<partition>:devo/<dev-org-id>:artifact/<artifact-id>"
2121
+ */
2122
+ id: string;
2123
+ }, params?: RequestParams) => Promise<AxiosResponse<ArtifactsLocateResponse, any>>;
2124
+ /**
2125
+ * @description Creates an artifact and generates an upload URL for its data.
2126
+ *
2127
+ * @tags artifacts
2128
+ * @name ArtifactsPrepare
2129
+ * @request POST:/artifacts.prepare
2130
+ * @secure
2131
+ */
2132
+ artifactsPrepare: (data: ArtifactsPrepareRequest, params?: RequestParams) => Promise<AxiosResponse<ArtifactsPrepareResponse, any>>;
2133
+ /**
2134
+ * @description Creates a JWT corresponding to the requested token type for the authenticated user.
2135
+ *
2136
+ * @tags auth-tokens
2137
+ * @name AuthTokensCreate
2138
+ * @request POST:/auth-tokens.create
2139
+ * @secure
2140
+ */
2141
+ authTokensCreate: (data: AuthTokensCreateRequest, params?: RequestParams) => Promise<AxiosResponse<AuthTokensCreateResponse, any>>;
2142
+ /**
2143
+ * @description Revokes the token that matches the given token ID issued under the given Dev organization.
2144
+ *
2145
+ * @tags auth-tokens
2146
+ * @name AuthTokensDelete
2147
+ * @request POST:/auth-tokens.delete
2148
+ * @secure
2149
+ */
2150
+ authTokensDelete: (data: AuthTokensDeleteRequest, params?: RequestParams) => Promise<AxiosResponse<void, any>>;
2151
+ /**
2152
+ * @description Gets the token metadata corresponding to the given token ID under the given Dev organization.
2153
+ *
2154
+ * @tags auth-tokens
2155
+ * @name AuthTokensGet
2156
+ * @request GET:/auth-tokens.get
2157
+ * @secure
2158
+ */
2159
+ authTokensGet: (query: {
2160
+ /** The unique identifier of the token under a given Dev organization. */
2161
+ token_id: string;
2162
+ }, params?: RequestParams) => Promise<AxiosResponse<AuthTokensGetResponse, any>>;
2163
+ /**
2164
+ * @description Gets the token metadata for all the tokens corresponding to the given token type issued for a given subject.
2165
+ *
2166
+ * @tags auth-tokens
2167
+ * @name AuthTokensList
2168
+ * @request GET:/auth-tokens.list
2169
+ * @secure
2170
+ */
2171
+ authTokensList: (query?: {
2172
+ /**
2173
+ * An identifier that represents the application, which requested the
2174
+ * token. Only relevant for application access tokens.
2175
+ */
2176
+ client_id?: string;
2177
+ /**
2178
+ * The type of the requested token. If no value is specified, the
2179
+ * response will include tokens of all the types.
2180
+ */
2181
+ requested_token_type?: AuthTokenRequestedTokenType;
2182
+ /**
2183
+ * The subject associated with the token. In the absence of this
2184
+ * parameter, the ID of the authenticated entity is treated as the
2185
+ * subject.
2186
+ */
2187
+ subject?: string;
2188
+ }, params?: RequestParams) => Promise<AxiosResponse<AuthTokensListResponse, any>>;
2189
+ /**
2190
+ * @description Revokes all the tokens that matches the given token type created by the authenticated user.
2191
+ *
2192
+ * @tags auth-tokens
2193
+ * @name AuthTokensSelfDelete
2194
+ * @request POST:/auth-tokens.self.delete
2195
+ * @secure
2196
+ */
2197
+ authTokensSelfDelete: (data: AuthTokensSelfDeleteRequest, params?: RequestParams) => Promise<AxiosResponse<void, any>>;
2198
+ /**
2199
+ * @description Updates token metadata of a token issued under a given Dev organization.
2200
+ *
2201
+ * @tags auth-tokens
2202
+ * @name AuthTokensUpdate
2203
+ * @request POST:/auth-tokens.update
2204
+ * @secure
2205
+ */
2206
+ authTokensUpdate: (data: AuthTokensUpdateRequest, params?: RequestParams) => Promise<AxiosResponse<AuthTokensUpdateResponse, any>>;
2207
+ /**
2208
+ * @description Creates a new enterprise authentication connection for a Dev organization. This authentication connection will not be enabled by default for the organization and the user will need to explicitly enable this. Keep in mind that at a time, only one authentication connection can be enabled for a Dev organization. At present, only 5 enterprise connections can be created by an organization.
2209
+ *
2210
+ * @tags auth-connection, dev-orgs
2211
+ * @name DevOrgAuthConnectionsCreate
2212
+ * @request POST:/dev-orgs.auth-connections.create
2213
+ * @secure
2214
+ */
2215
+ devOrgAuthConnectionsCreate: (data: DevOrgAuthConnectionsCreateRequest, params?: RequestParams) => Promise<AxiosResponse<DevOrgAuthConnectionsCreateResponse, any>>;
2216
+ /**
2217
+ * @description Deletes an authentication connection. Only enterprise connections which are explicitly set up for a Dev organization can be deleted. Default connections can not be deleted using this method.
2218
+ *
2219
+ * @tags auth-connection, dev-orgs
2220
+ * @name DevOrgAuthConnectionsDelete
2221
+ * @request POST:/dev-orgs.auth-connections.delete
2222
+ * @secure
2223
+ */
2224
+ devOrgAuthConnectionsDelete: (data: DevOrgAuthConnectionsDeleteRequest, params?: RequestParams) => Promise<AxiosResponse<void, any>>;
2225
+ /**
2226
+ * @description Retrieves the details for an authentication connection.
2227
+ *
2228
+ * @tags auth-connection, dev-orgs
2229
+ * @name DevOrgAuthConnectionsGet
2230
+ * @request GET:/dev-orgs.auth-connections.get
2231
+ * @secure
2232
+ */
2233
+ devOrgAuthConnectionsGet: (query: {
2234
+ /** ID of the authentication connection. */
2235
+ id: string;
2236
+ }, params?: RequestParams) => Promise<AxiosResponse<DevOrgAuthConnectionsGetResponse, any>>;
2237
+ /**
2238
+ * @description Lists all the authentication connections available for a Dev organization. This list will include both social and enterprise connections which are either available by default or are explicitly created by the user.
2239
+ *
2240
+ * @tags auth-connection, dev-orgs
2241
+ * @name DevOrgAuthConnectionsList
2242
+ * @request GET:/dev-orgs.auth-connections.list
2243
+ * @secure
2244
+ */
2245
+ devOrgAuthConnectionsList: (params?: RequestParams) => Promise<AxiosResponse<DevOrgAuthConnectionsListResponse, any>>;
2246
+ /**
2247
+ * @description Enable or disable an authentication connection for a Dev organization. Currently, only 1 authentication connection can be enabled at a time. When a new authentication connection is enabled, the connection which is currently enabled for the Dev organization is automatically disabled.
2248
+ *
2249
+ * @tags auth-connection, dev-orgs
2250
+ * @name DevOrgAuthConnectionsToggle
2251
+ * @request POST:/dev-orgs.auth-connections.toggle
2252
+ * @secure
2253
+ */
2254
+ devOrgAuthConnectionsToggle: (data: DevOrgAuthConnectionsToggleRequest, params?: RequestParams) => Promise<AxiosResponse<void, any>>;
2255
+ /**
2256
+ * @description Updates an authentication connection.
2257
+ *
2258
+ * @tags auth-connection, dev-orgs
2259
+ * @name DevOrgAuthConnectionsUpdate
2260
+ * @request POST:/dev-orgs.auth-connections.update
2261
+ * @secure
2262
+ */
2263
+ devOrgAuthConnectionsUpdate: (data: DevOrgAuthConnectionsUpdateRequest, params?: RequestParams) => Promise<AxiosResponse<DevOrgAuthConnectionsUpdateResponse, any>>;
2264
+ /**
2265
+ * @description Lists users within your organization.
2266
+ *
2267
+ * @tags dev-users
2268
+ * @name DevUsersList
2269
+ * @request GET:/dev-users.list
2270
+ * @secure
2271
+ */
2272
+ devUsersList: (query?: {
2273
+ /**
2274
+ * The cursor to resume iteration from. If not provided, then iteration
2275
+ * starts from the beginning.
2276
+ */
2277
+ cursor?: string;
2278
+ /** Filters Dev users based on email addresses. */
2279
+ email?: string[];
2280
+ /**
2281
+ * The maximum number of Dev users to return. The default is '50'.
2282
+ * @format int32
2283
+ */
2284
+ limit?: number;
2285
+ /**
2286
+ * The iteration mode to use, otherwise if not set, then "after" is
2287
+ * used.
2288
+ */
2289
+ mode?: ListMode;
2290
+ /** Fields to sort the Dev users by and the direction to sort them. */
2291
+ sort_by?: string[];
2292
+ /** Filters Dev users based on state. */
2293
+ state?: UserState[];
2294
+ }, params?: RequestParams) => Promise<AxiosResponse<DevUsersListResponse, any>>;
2295
+ /**
2296
+ * @description Gets the authenticated user's information.
2297
+ *
2298
+ * @tags dev-users
2299
+ * @name DevUsersSelf
2300
+ * @request GET:/dev-users.self
2301
+ * @secure
2302
+ */
2303
+ devUsersSelf: (params?: RequestParams) => Promise<AxiosResponse<DevUsersSelfResponse, any>>;
2304
+ /**
2305
+ * @description Creates new [part](https://devrev.ai/docs/product/parts).
2306
+ *
2307
+ * @tags parts
2308
+ * @name PartsCreate
2309
+ * @request POST:/parts.create
2310
+ * @secure
2311
+ */
2312
+ partsCreate: (data: PartsCreateRequest, params?: RequestParams) => Promise<AxiosResponse<PartsCreateResponse, any>>;
2313
+ /**
2314
+ * @description Deletes a [part](https://devrev.ai/docs/product/parts).
2315
+ *
2316
+ * @tags parts
2317
+ * @name PartsDelete
2318
+ * @request POST:/parts.delete
2319
+ * @secure
2320
+ */
2321
+ partsDelete: (data: PartsDeleteRequest, params?: RequestParams) => Promise<AxiosResponse<object, any>>;
2322
+ /**
2323
+ * @description Gets a [part's](https://devrev.ai/docs/product/parts) information.
2324
+ *
2325
+ * @tags parts
2326
+ * @name PartsGet
2327
+ * @request GET:/parts.get
2328
+ * @secure
2329
+ */
2330
+ partsGet: (query: {
2331
+ /**
2332
+ * The ID of the part to retrieve.
2333
+ * @example "don:core:<partition>:devo/<dev-org-id>:<part-type>/<part-id>"
2334
+ */
2335
+ id: string;
2336
+ }, params?: RequestParams) => Promise<AxiosResponse<PartsGetResponse, any>>;
2337
+ /**
2338
+ * @description Lists a collection of [parts](https://devrev.ai/docs/product/parts).
2339
+ *
2340
+ * @tags parts
2341
+ * @name PartsList
2342
+ * @request GET:/parts.list
2343
+ * @secure
2344
+ */
2345
+ partsList: (query?: {
2346
+ /**
2347
+ * Filters for parts created by any of these users.
2348
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:devu/<dev-user-id>"]
2349
+ */
2350
+ created_by?: string[];
2351
+ /**
2352
+ * The cursor to resume iteration from. If not provided, then iteration
2353
+ * starts from the beginning.
2354
+ */
2355
+ cursor?: string;
2356
+ /**
2357
+ * The maximum number of parts to return. The default is '50'.
2358
+ * @format int32
2359
+ */
2360
+ limit?: number;
2361
+ /**
2362
+ * The iteration mode to use, otherwise if not set, then "after" is
2363
+ * used.
2364
+ */
2365
+ mode?: ListMode;
2366
+ /** Filters for parts of the provided name(s). */
2367
+ name?: string[];
2368
+ /**
2369
+ * Filters for parts owned by any of these users.
2370
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:devu/<dev-user-id>"]
2371
+ */
2372
+ owned_by?: string[];
2373
+ /** Filters for parts of the provided type(s). */
2374
+ type?: PartType[];
2375
+ }, params?: RequestParams) => Promise<AxiosResponse<PartsListResponse, any>>;
2376
+ /**
2377
+ * @description Updates a [part's](https://devrev.ai/docs/product/parts) information.
2378
+ *
2379
+ * @tags parts
2380
+ * @name PartsUpdate
2381
+ * @request POST:/parts.update
2382
+ * @secure
2383
+ */
2384
+ partsUpdate: (data: PartsUpdateRequest, params?: RequestParams) => Promise<AxiosResponse<PartsUpdateResponse, any>>;
2385
+ /**
2386
+ * @description Creates a Rev organization in the authenticated user's Dev organization.
2387
+ *
2388
+ * @tags rev-orgs
2389
+ * @name RevOrgsCreate
2390
+ * @request POST:/rev-orgs.create
2391
+ * @secure
2392
+ */
2393
+ revOrgsCreate: (data: RevOrgsCreateRequest, params?: RequestParams) => Promise<AxiosResponse<RevOrgsCreateResponse, any>>;
2394
+ /**
2395
+ * @description Deletes the Rev organization.
2396
+ *
2397
+ * @tags rev-orgs
2398
+ * @name RevOrgsDelete
2399
+ * @request POST:/rev-orgs.delete
2400
+ * @secure
2401
+ */
2402
+ revOrgsDelete: (data: RevOrgsDeleteRequest, params?: RequestParams) => Promise<AxiosResponse<object, any>>;
2403
+ /**
2404
+ * @description Retrieves the Rev organization's information.
2405
+ *
2406
+ * @tags rev-orgs
2407
+ * @name RevOrgsGet
2408
+ * @request GET:/rev-orgs.get
2409
+ * @secure
2410
+ */
2411
+ revOrgsGet: (query: {
2412
+ /**
2413
+ * The ID of the required Rev organization.
2414
+ * @example "don:identity:<partition>:devo/<dev-org-id>:revo/<rev-org-id>"
2415
+ */
2416
+ id: string;
2417
+ }, params?: RequestParams) => Promise<AxiosResponse<RevOrgsGetResponse, any>>;
2418
+ /**
2419
+ * @description Gets the list of Rev organizations' information belonging to the authenticated user's Dev Organization which the user is also authorized to access.
2420
+ *
2421
+ * @tags rev-orgs
2422
+ * @name RevOrgsList
2423
+ * @request GET:/rev-orgs.list
2424
+ * @secure
2425
+ */
2426
+ revOrgsList: (query?: {
2427
+ /** Filters by creator. */
2428
+ created_by?: string[];
2429
+ /**
2430
+ * Filters for objects created after the provided timestamp (inclusive).
2431
+ * @format date-time
2432
+ */
2433
+ 'created_date.after'?: string;
2434
+ /**
2435
+ * Filters for objects created before the provided timestamp
2436
+ * (inclusive).
2437
+ * @format date-time
2438
+ */
2439
+ 'created_date.before'?: string;
2440
+ /**
2441
+ * The cursor to resume iteration from. If not provided, then iteration
2442
+ * starts from the beginning.
2443
+ */
2444
+ cursor?: string;
2445
+ /** List of external refs to filter Rev organizations for. */
2446
+ external_ref?: string[];
2447
+ /**
2448
+ * The maximum number of Rev organizations to be retrieved per page.
2449
+ * @format int32
2450
+ */
2451
+ limit?: number;
2452
+ /**
2453
+ * The iteration mode to use, otherwise if not set, then "after" is
2454
+ * used.
2455
+ */
2456
+ mode?: ListMode;
2457
+ /**
2458
+ * Filters for objects created after the provided timestamp (inclusive).
2459
+ * @format date-time
2460
+ */
2461
+ 'modified_date.after'?: string;
2462
+ /**
2463
+ * Filters for objects created before the provided timestamp
2464
+ * (inclusive).
2465
+ * @format date-time
2466
+ */
2467
+ 'modified_date.before'?: string;
2468
+ /**
2469
+ * Fields to sort the Rev organizations by and the direction to sort
2470
+ * them.
2471
+ */
2472
+ sort_by?: string[];
2473
+ }, params?: RequestParams) => Promise<AxiosResponse<RevOrgsListResponse, any>>;
2474
+ /**
2475
+ * @description Updates the Rev organization's information.
2476
+ *
2477
+ * @tags rev-orgs
2478
+ * @name RevOrgsUpdate
2479
+ * @request POST:/rev-orgs.update
2480
+ * @secure
2481
+ */
2482
+ revOrgsUpdate: (data: RevOrgsUpdateRequest, params?: RequestParams) => Promise<AxiosResponse<RevOrgsUpdateResponse, any>>;
2483
+ /**
2484
+ * @description Creates a new tag, which is used to create associations between objects and a logical concept denoted by the tag's name.
2485
+ *
2486
+ * @tags tags
2487
+ * @name TagsCreate
2488
+ * @request POST:/tags.create
2489
+ * @secure
2490
+ */
2491
+ tagsCreate: (data: TagsCreateRequest, params?: RequestParams) => Promise<AxiosResponse<TagsCreateResponse, any>>;
2492
+ /**
2493
+ * @description Deletes a tag.
2494
+ *
2495
+ * @tags tags
2496
+ * @name TagsDelete
2497
+ * @request POST:/tags.delete
2498
+ * @secure
2499
+ */
2500
+ tagsDelete: (data: TagsDeleteRequest, params?: RequestParams) => Promise<AxiosResponse<object, any>>;
2501
+ /**
2502
+ * @description Gets a tag's information.
2503
+ *
2504
+ * @tags tags
2505
+ * @name TagsGet
2506
+ * @request GET:/tags.get
2507
+ * @secure
2508
+ */
2509
+ tagsGet: (query: {
2510
+ /**
2511
+ * The requested tag's ID.
2512
+ * @example "don:core:<partition>:devo/<dev-org-id>:tag/<tag-id>"
2513
+ */
2514
+ id: string;
2515
+ }, params?: RequestParams) => Promise<AxiosResponse<TagsGetResponse, any>>;
2516
+ /**
2517
+ * @description Lists the available tags.
2518
+ *
2519
+ * @tags tags
2520
+ * @name TagsList
2521
+ * @request GET:/tags.list
2522
+ * @secure
2523
+ */
2524
+ tagsList: (query?: {
2525
+ /**
2526
+ * The cursor to resume iteration from. If not provided, then iteration
2527
+ * starts from the beginning.
2528
+ */
2529
+ cursor?: string;
2530
+ /**
2531
+ * The maximum number of tags to return. The default is '50'.
2532
+ * @format int32
2533
+ */
2534
+ limit?: number;
2535
+ /**
2536
+ * The iteration mode to use, otherwise if not set, then "after" is
2537
+ * used.
2538
+ */
2539
+ mode?: ListMode;
2540
+ }, params?: RequestParams) => Promise<AxiosResponse<TagsListResponse, any>>;
2541
+ /**
2542
+ * @description Updates a tag's information.
2543
+ *
2544
+ * @tags tags
2545
+ * @name TagsUpdate
2546
+ * @request POST:/tags.update
2547
+ * @secure
2548
+ */
2549
+ tagsUpdate: (data: TagsUpdateRequest, params?: RequestParams) => Promise<AxiosResponse<TagsUpdateResponse, any>>;
2550
+ /**
2551
+ * @description Creates a new entry on an object's timeline.
2552
+ *
2553
+ * @tags timeline-entries
2554
+ * @name TimelineEntriesCreate
2555
+ * @request POST:/timeline-entries.create
2556
+ * @secure
2557
+ */
2558
+ timelineEntriesCreate: (data: TimelineEntriesCreateRequest, params?: RequestParams) => Promise<AxiosResponse<TimelineEntriesCreateResponse, any>>;
2559
+ /**
2560
+ * @description Deletes an entry from an object's timeline.
2561
+ *
2562
+ * @tags timeline-entries
2563
+ * @name TimelineEntriesDelete
2564
+ * @request POST:/timeline-entries.delete
2565
+ * @secure
2566
+ */
2567
+ timelineEntriesDelete: (data: TimelineEntriesDeleteRequest, params?: RequestParams) => Promise<AxiosResponse<object, any>>;
2568
+ /**
2569
+ * @description Gets an entry on an object's timeline.
2570
+ *
2571
+ * @tags timeline-entries
2572
+ * @name TimelineEntriesGet
2573
+ * @request GET:/timeline-entries.get
2574
+ * @secure
2575
+ */
2576
+ timelineEntriesGet: (query: {
2577
+ /**
2578
+ * The ID of the timeline entry to get.
2579
+ * @example "don:core:<partition>:devo/<dev-org-id>:ticket/123:timeline_event/<timeline-event-id>"
2580
+ */
2581
+ id: string;
2582
+ }, params?: RequestParams) => Promise<AxiosResponse<TimelineEntriesGetResponse, any>>;
2583
+ /**
2584
+ * @description Lists the timeline entries for an object.
2585
+ *
2586
+ * @tags timeline-entries
2587
+ * @name TimelineEntriesList
2588
+ * @request GET:/timeline-entries.list
2589
+ * @secure
2590
+ */
2591
+ timelineEntriesList: (query: {
2592
+ /**
2593
+ * The ID of the object to list timeline entries for.
2594
+ * @example "don:core:<partition>:devo/<dev-org-id>:<part-type>/<part-id>"
2595
+ */
2596
+ object: string;
2597
+ /**
2598
+ * The cursor to resume iteration from. If not provided, then iteration
2599
+ * starts from the beginning.
2600
+ */
2601
+ cursor?: string;
2602
+ /**
2603
+ * The maximum number of entries to return. If not set, then this
2604
+ * defaults to `50`.
2605
+ * @format int32
2606
+ */
2607
+ limit?: number;
2608
+ /**
2609
+ * The iteration mode to use, otherwise if not set, then "after" is
2610
+ * used.
2611
+ */
2612
+ mode?: ListMode;
2613
+ /**
2614
+ * The visibility of the timeline entries to filter for. Note this is a
2615
+ * strict filter, such that only entries with the exact visibilities
2616
+ * specified will be returned.
2617
+ */
2618
+ visibility?: TimelineEntryVisibility[];
2619
+ }, params?: RequestParams) => Promise<AxiosResponse<TimelineEntriesListResponse, any>>;
2620
+ /**
2621
+ * @description Updates an entry on an object's timeline.
2622
+ *
2623
+ * @tags timeline-entries
2624
+ * @name TimelineEntriesUpdate
2625
+ * @request POST:/timeline-entries.update
2626
+ * @secure
2627
+ */
2628
+ timelineEntriesUpdate: (data: TimelineEntriesUpdateRequest, params?: RequestParams) => Promise<AxiosResponse<TimelineEntriesUpdateResponse, any>>;
2629
+ /**
2630
+ * @description Creates a new webhook target.
2631
+ *
2632
+ * @tags webhooks
2633
+ * @name WebhooksCreate
2634
+ * @request POST:/webhooks.create
2635
+ * @secure
2636
+ */
2637
+ webhooksCreate: (data: WebhooksCreateRequest, params?: RequestParams) => Promise<AxiosResponse<WebhooksCreateResponse, any>>;
2638
+ /**
2639
+ * @description Deletes the requested webhook.
2640
+ *
2641
+ * @tags webhooks
2642
+ * @name WebhooksDelete
2643
+ * @request POST:/webhooks.delete
2644
+ * @secure
2645
+ */
2646
+ webhooksDelete: (data: WebhooksDeleteRequest, params?: RequestParams) => Promise<AxiosResponse<object, any>>;
2647
+ /**
2648
+ * @description Gets the requested webhook's information.
2649
+ *
2650
+ * @tags webhooks
2651
+ * @name WebhooksGet
2652
+ * @request GET:/webhooks.get
2653
+ * @secure
2654
+ */
2655
+ webhooksGet: (query: {
2656
+ /**
2657
+ * ID for the webhook.
2658
+ * @example "don:integration:<partition>:devo/<dev-org-id>:webhook/<webhook-id>"
2659
+ */
2660
+ id: string;
2661
+ }, params?: RequestParams) => Promise<AxiosResponse<WebhooksGetResponse, any>>;
2662
+ /**
2663
+ * @description Lists the webhooks.
2664
+ *
2665
+ * @tags webhooks
2666
+ * @name WebhooksList
2667
+ * @request GET:/webhooks.list
2668
+ * @secure
2669
+ */
2670
+ webhooksList: (params?: RequestParams) => Promise<AxiosResponse<WebhooksListResponse, any>>;
2671
+ /**
2672
+ * @description Updates the requested webhook.
2673
+ *
2674
+ * @tags webhooks
2675
+ * @name WebhooksUpdate
2676
+ * @request POST:/webhooks.update
2677
+ * @secure
2678
+ */
2679
+ webhooksUpdate: (data: WebhooksUpdateRequest, params?: RequestParams) => Promise<AxiosResponse<WebhooksUpdateResponse, any>>;
2680
+ /**
2681
+ * @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.
2682
+ *
2683
+ * @tags works
2684
+ * @name WorksCreate
2685
+ * @request POST:/works.create
2686
+ * @secure
2687
+ */
2688
+ worksCreate: (data: WorksCreateRequest, params?: RequestParams) => Promise<AxiosResponse<WorksCreateResponse, any>>;
2689
+ /**
2690
+ * @description Deletes a work item.
2691
+ *
2692
+ * @tags works
2693
+ * @name WorksDelete
2694
+ * @request POST:/works.delete
2695
+ * @secure
2696
+ */
2697
+ worksDelete: (data: WorksDeleteRequest, params?: RequestParams) => Promise<AxiosResponse<object, any>>;
2698
+ /**
2699
+ * @description Exports a collection of work items.
2700
+ *
2701
+ * @tags works
2702
+ * @name WorksExport
2703
+ * @request GET:/works.export
2704
+ * @secure
2705
+ */
2706
+ worksExport: (query?: {
2707
+ /**
2708
+ * Filters for work belonging to any of the provided parts.
2709
+ * @example ["don:core:<partition>:devo/<dev-org-id>:<part-type>/<part-id>"]
2710
+ */
2711
+ applies_to_part?: string[];
2712
+ /**
2713
+ * Filters for work created by any of these users.
2714
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:devu/<dev-user-id>"]
2715
+ */
2716
+ created_by?: string[];
2717
+ /**
2718
+ * The number of work items to return. The default is '50', the maximum
2719
+ * is '5000'.
2720
+ * @format int32
2721
+ */
2722
+ first?: number;
2723
+ /** Filters for issues with any of the provided priorities. */
2724
+ 'issue.priority'?: IssuePriority[];
2725
+ /**
2726
+ * Filters for issues with any of the provided Rev organizations.
2727
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:revo/<rev-org-id>"]
2728
+ */
2729
+ 'issue.rev_orgs'?: string[];
2730
+ /**
2731
+ * Filters for work owned by any of these users.
2732
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:devu/<dev-user-id>"]
2733
+ */
2734
+ owned_by?: string[];
2735
+ /** Filters for records in the provided stage(s). */
2736
+ 'stage.name'?: string[];
2737
+ /** Filters for tickets belonging to specific groups. */
2738
+ 'ticket.group'?: string[];
2739
+ /** Filters for tickets that are spam. */
2740
+ 'ticket.is_spam'?: boolean;
2741
+ /** Filters for tickets that need response. */
2742
+ 'ticket.needs_response'?: boolean;
2743
+ /**
2744
+ * Filters for tickets that are associated with any of the provided Rev
2745
+ * organizations.
2746
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:revo/<rev-org-id>"]
2747
+ */
2748
+ 'ticket.rev_org'?: string[];
2749
+ /** Filters for tickets with any of the provided severities. */
2750
+ 'ticket.severity'?: TicketSeverity[];
2751
+ /** Filters for tickets with any of the provided source channels. */
2752
+ 'ticket.source_channel'?: string[];
2753
+ /** Filters for work of the provided types. */
2754
+ type?: WorkType[];
2755
+ }, params?: RequestParams) => Promise<AxiosResponse<WorksExportResponse, any>>;
2756
+ /**
2757
+ * @description Gets a work item's information.
2758
+ *
2759
+ * @tags works
2760
+ * @name WorksGet
2761
+ * @request GET:/works.get
2762
+ * @secure
2763
+ */
2764
+ worksGet: (query: {
2765
+ /**
2766
+ * The work's ID.
2767
+ * @example "don:core:<partition>:devo/<dev-org-id>:<work-type>/<work-id>"
2768
+ */
2769
+ id: string;
2770
+ }, params?: RequestParams) => Promise<AxiosResponse<WorksGetResponse, any>>;
2771
+ /**
2772
+ * @description Lists a collection of work items.
2773
+ *
2774
+ * @tags works
2775
+ * @name WorksList
2776
+ * @request GET:/works.list
2777
+ * @secure
2778
+ */
2779
+ worksList: (query?: {
2780
+ /**
2781
+ * Filters for work belonging to any of the provided parts.
2782
+ * @example ["don:core:<partition>:devo/<dev-org-id>:<part-type>/<part-id>"]
2783
+ */
2784
+ applies_to_part?: string[];
2785
+ /**
2786
+ * Filters for work created by any of these users.
2787
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:devu/<dev-user-id>"]
2788
+ */
2789
+ created_by?: string[];
2790
+ /**
2791
+ * The cursor to resume iteration from. If not provided, then iteration
2792
+ * starts from the beginning.
2793
+ */
2794
+ cursor?: string;
2795
+ /** Filters for issues with any of the provided priorities. */
2796
+ 'issue.priority'?: IssuePriority[];
2797
+ /**
2798
+ * Filters for issues with any of the provided Rev organizations.
2799
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:revo/<rev-org-id>"]
2800
+ */
2801
+ 'issue.rev_orgs'?: string[];
2802
+ /**
2803
+ * The maximum number of works to return. The default is '50'.
2804
+ * @format int32
2805
+ */
2806
+ limit?: number;
2807
+ /**
2808
+ * The iteration mode to use, otherwise if not set, then "after" is
2809
+ * used.
2810
+ */
2811
+ mode?: ListMode;
2812
+ /**
2813
+ * Filters for work owned by any of these users.
2814
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:devu/<dev-user-id>"]
2815
+ */
2816
+ owned_by?: string[];
2817
+ /** Filters for records in the provided stage(s). */
2818
+ 'stage.name'?: string[];
2819
+ /** Filters for tickets belonging to specific groups. */
2820
+ 'ticket.group'?: string[];
2821
+ /** Filters for tickets that are spam. */
2822
+ 'ticket.is_spam'?: boolean;
2823
+ /** Filters for tickets that need response. */
2824
+ 'ticket.needs_response'?: boolean;
2825
+ /**
2826
+ * Filters for tickets that are associated with any of the provided Rev
2827
+ * organizations.
2828
+ * @example ["don:identity:<partition>:devo/<dev-org-id>:revo/<rev-org-id>"]
2829
+ */
2830
+ 'ticket.rev_org'?: string[];
2831
+ /** Filters for tickets with any of the provided severities. */
2832
+ 'ticket.severity'?: TicketSeverity[];
2833
+ /** Filters for tickets with any of the provided source channels. */
2834
+ 'ticket.source_channel'?: string[];
2835
+ /** Filters for work of the provided types. */
2836
+ type?: WorkType[];
2837
+ }, params?: RequestParams) => Promise<AxiosResponse<WorksListResponse, any>>;
2838
+ /**
2839
+ * @description Updates a work item's information.
2840
+ *
2841
+ * @tags works
2842
+ * @name WorksUpdate
2843
+ * @request POST:/works.update
2844
+ * @secure
2845
+ */
2846
+ worksUpdate: (data: WorksUpdateRequest, params?: RequestParams) => Promise<AxiosResponse<WorksUpdateResponse, any>>;
2847
+ }