@devrev/typescript-sdk 1.1.3 → 1.1.4

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