@devrev/typescript-sdk 1.1.23 → 1.1.25

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.
@@ -14,6 +14,222 @@ export type Account = OrgBase & {
14
14
  /** The Tier of the corresponding Account. */
15
15
  tier?: string;
16
16
  };
17
+ /**
18
+ * accounts-create-request
19
+ * Request object to create a new account in the Dev organization.
20
+ */
21
+ export interface AccountsCreateRequest {
22
+ /** Description of the account. */
23
+ description?: string;
24
+ /** Name of the account. */
25
+ display_name: string;
26
+ /** List of company's domain names. Example - ['devrev.ai']. */
27
+ domains?: string[];
28
+ /**
29
+ * External refs are unique identifiers from your customer system of
30
+ * records, stored as a list.
31
+ */
32
+ external_refs?: string[];
33
+ /** List of Dev users owning this account. */
34
+ owned_by?: string[];
35
+ /** The tier of the account. */
36
+ tier?: string;
37
+ /**
38
+ * List of company websites. Example - ['www.devrev.ai',
39
+ * 'www.marketplace.devrev.ai'].
40
+ */
41
+ websites?: string[];
42
+ }
43
+ /**
44
+ * accounts-create-response
45
+ * The response to creating a new account.
46
+ */
47
+ export interface AccountsCreateResponse {
48
+ account: Account;
49
+ }
50
+ /**
51
+ * accounts-delete-request
52
+ * Request object to delete an account.
53
+ */
54
+ export interface AccountsDeleteRequest {
55
+ /**
56
+ * The ID of account to delete.
57
+ * @example "ACC-12345"
58
+ */
59
+ id: string;
60
+ }
61
+ /**
62
+ * accounts-delete-response
63
+ * The response to deleting an account.
64
+ */
65
+ export type AccountsDeleteResponse = object;
66
+ /**
67
+ * accounts-export-request
68
+ * The request to export a collection of accounts.
69
+ */
70
+ export interface AccountsExportRequest {
71
+ /** Filters for accounts created by the specified user(s). */
72
+ created_by?: string[];
73
+ created_date?: DateTimeFilter;
74
+ /** Array of display names of accounts to be filtered. */
75
+ display_name?: string[];
76
+ /** Array of references of accounts to be filtered. */
77
+ external_refs?: string[];
78
+ /**
79
+ * The number of accounts to return. The default is '50'.
80
+ * @format int32
81
+ * @min 1
82
+ * @max 500
83
+ */
84
+ first?: number;
85
+ modified_date?: DateTimeFilter;
86
+ /** Fields to sort the accounts by and the direction to sort them in. */
87
+ sort_by?: string[];
88
+ /** Filters for accounts on specified stages. */
89
+ stage?: string[];
90
+ }
91
+ /**
92
+ * accounts-export-response
93
+ * The response to exporting a collection of accounts.
94
+ */
95
+ export interface AccountsExportResponse {
96
+ /** The exported accounts. */
97
+ accounts: Account[];
98
+ }
99
+ /**
100
+ * accounts-get-request
101
+ * Request object to get an account's information.
102
+ */
103
+ export interface AccountsGetRequest {
104
+ /**
105
+ * The ID of the account to be retrieved.
106
+ * @example "ACC-12345"
107
+ */
108
+ id: string;
109
+ }
110
+ /**
111
+ * accounts-get-response
112
+ * The returned account.
113
+ */
114
+ export interface AccountsGetResponse {
115
+ account: Account;
116
+ }
117
+ /**
118
+ * accounts-list-request
119
+ * List the accounts.
120
+ */
121
+ export interface AccountsListRequest {
122
+ /** Filters for accounts created by the specified user(s). */
123
+ created_by?: string[];
124
+ created_date?: DateTimeFilter;
125
+ /**
126
+ * The cursor to resume iteration from. If not provided, then
127
+ * iteration starts from the beginning.
128
+ */
129
+ cursor?: string;
130
+ /** Array of display names of accounts to be filtered. */
131
+ display_name?: string[];
132
+ /** Array of references of accounts to be filtered. */
133
+ external_refs?: string[];
134
+ /**
135
+ * The maximum number of accounts to return per page. The default is
136
+ * '50'.
137
+ * @format int32
138
+ */
139
+ limit?: number;
140
+ /**
141
+ * The iteration mode to use. If "after", then entries after the provided
142
+ * cursor will be returned, or if no cursor is provided, then from the
143
+ * beginning. If "before", then entries before the provided cursor will be
144
+ * returned, or if no cursor is provided, then from the end. Entries will
145
+ * always be returned in the specified sort-by order.
146
+ */
147
+ mode?: ListMode;
148
+ modified_date?: DateTimeFilter;
149
+ /** Fields to sort the accounts by and the direction to sort them in. */
150
+ sort_by?: string[];
151
+ /** Filters for accounts on specified stages. */
152
+ stage?: string[];
153
+ }
154
+ /**
155
+ * accounts-list-response
156
+ * The response to listing all accounts matching the filter criteria.
157
+ */
158
+ export interface AccountsListResponse {
159
+ /** List containing all the accounts */
160
+ accounts: Account[];
161
+ /**
162
+ * The cursor used to iterate subsequent results in accordance to the
163
+ * sort order. If not set, then no later elements exist.
164
+ */
165
+ next_cursor?: string;
166
+ /**
167
+ * The cursor used to iterate preceding results in accordance to the
168
+ * sort order. If not set, then no prior elements exist.
169
+ */
170
+ prev_cursor?: string;
171
+ }
172
+ /**
173
+ * accounts-update-request
174
+ * Request to update details of the account.
175
+ */
176
+ export interface AccountsUpdateRequest {
177
+ /** Updated description of the account. */
178
+ description?: string;
179
+ /** Updated display name for the account. */
180
+ display_name?: string;
181
+ /** Updated list of company's domain names. Example - ['devrev.ai']. */
182
+ domains?: string[];
183
+ /** Updated External Refs of account. */
184
+ external_refs?: string[];
185
+ /**
186
+ * The ID of account to update.
187
+ * @example "ACC-12345"
188
+ */
189
+ id: string;
190
+ /** Updated list of the users owning this account. */
191
+ owned_by?: string[];
192
+ /** Updated tier of the account. */
193
+ tier?: string | null;
194
+ }
195
+ /**
196
+ * accounts-update-response
197
+ * Updated account object.
198
+ */
199
+ export interface AccountsUpdateResponse {
200
+ account: Account;
201
+ }
202
+ /**
203
+ * archetype-metric-target
204
+ * Metric with corresponding target values.
205
+ */
206
+ export interface ArchetypeMetricTarget {
207
+ /**
208
+ * If true, the schedule attached to this metric is out of schedule at
209
+ * the time of the query.
210
+ */
211
+ is_out_of_schedule?: boolean;
212
+ metric_definition: MetricDefinitionSummary;
213
+ org_schedule?: OrgScheduleSummary;
214
+ /**
215
+ * Time in minutes that remains on a paused metric.
216
+ * @format int32
217
+ */
218
+ remaining_time?: number;
219
+ /**
220
+ * Time at which the metric would breach SLA if no action taken.
221
+ * @format date-time
222
+ * @example "2023-01-01T12:00:00.000Z"
223
+ */
224
+ target_time?: string;
225
+ /**
226
+ * Time at which the metric would reach the SLA warning limit if no
227
+ * action taken.
228
+ * @format date-time
229
+ * @example "2023-01-01T12:00:00.000Z"
230
+ */
231
+ warning_target_time?: string;
232
+ }
17
233
  /** artifact */
18
234
  export type Artifact = AtomBase;
19
235
  /** artifact-summary */
@@ -61,7 +277,7 @@ export interface ArtifactsGetResponse {
61
277
  */
62
278
  export interface ArtifactsListRequest {
63
279
  /** The ID of the object to filter artifacts. */
64
- parent_id: string;
280
+ parent_id?: string;
65
281
  }
66
282
  /**
67
283
  * artifacts-list-response
@@ -105,6 +321,8 @@ export interface ArtifactsLocateResponse {
105
321
  export interface ArtifactsPrepareRequest {
106
322
  /** The name of the file that's being uploaded. */
107
323
  file_name: string;
324
+ /** The type of file that's being uploaded. */
325
+ file_type?: string;
108
326
  }
109
327
  /**
110
328
  * artifacts-prepare-response
@@ -288,8 +506,10 @@ export declare enum AuthTokenGrantType {
288
506
  /** The type of the requested token. */
289
507
  export declare enum AuthTokenRequestedTokenType {
290
508
  UrnDevrevParamsOauthTokenTypeAat = "urn:devrev:params:oauth:token-type:aat",
509
+ UrnDevrevParamsOauthTokenTypeAatActAs = "urn:devrev:params:oauth:token-type:aat:act-as",
291
510
  UrnDevrevParamsOauthTokenTypeAatPublic = "urn:devrev:params:oauth:token-type:aat:public",
292
511
  UrnDevrevParamsOauthTokenTypeDev = "urn:devrev:params:oauth:token-type:dev",
512
+ UrnDevrevParamsOauthTokenTypeDevConnect = "urn:devrev:params:oauth:token-type:dev:connect",
293
513
  UrnDevrevParamsOauthTokenTypeGat = "urn:devrev:params:oauth:token-type:gat",
294
514
  UrnDevrevParamsOauthTokenTypePat = "urn:devrev:params:oauth:token-type:pat",
295
515
  UrnDevrevParamsOauthTokenTypePatActAs = "urn:devrev:params:oauth:token-type:pat:act-as",
@@ -298,6 +518,7 @@ export declare enum AuthTokenRequestedTokenType {
298
518
  UrnDevrevParamsOauthTokenTypeSession = "urn:devrev:params:oauth:token-type:session",
299
519
  UrnDevrevParamsOauthTokenTypeSessionDev0 = "urn:devrev:params:oauth:token-type:session:dev0",
300
520
  UrnDevrevParamsOauthTokenTypeSessionOnetime = "urn:devrev:params:oauth:token-type:session:onetime",
521
+ UrnDevrevParamsOauthTokenTypeSessionRevActAs = "urn:devrev:params:oauth:token-type:session:rev:act-as",
301
522
  UrnDevrevParamsOauthTokenTypeSuper = "urn:devrev:params:oauth:token-type:super",
302
523
  UrnDevrevParamsOauthTokenTypeSys = "urn:devrev:params:oauth:token-type:sys",
303
524
  UrnIetfParamsOauthTokenTypeJwt = "urn:ietf:params:oauth:token-type:jwt"
@@ -330,7 +551,10 @@ export declare enum AuthTokenTokenType {
330
551
  * type.
331
552
  */
332
553
  export interface AuthTokensCreateRequest {
333
- /** The unique ID of the Dev user to impersonate. */
554
+ /**
555
+ * The unique ID of the Dev user or the service account to
556
+ * impersonate.
557
+ */
334
558
  act_as?: string;
335
559
  /** The expected audience values with respect to the token. */
336
560
  aud?: string[];
@@ -559,6 +783,7 @@ export type Conversation = AtomBase & {
559
783
  metadata?: ConversationMetadata;
560
784
  /** Owner IDs for the conversation. */
561
785
  owned_by?: UserSummary[];
786
+ sla_tracker?: SlaTrackerSummary;
562
787
  /** Describes the current stage of a work item. */
563
788
  stage?: LegacyStage;
564
789
  /** Tags associated with the object. */
@@ -877,7 +1102,7 @@ export type Enhancement = PartBase;
877
1102
  /** enhancement-summary */
878
1103
  export type EnhancementSummary = PartBaseSummary;
879
1104
  /** error-bad-request */
880
- export type ErrorBadRequest = ErrorBase & (ErrorBadRequestBadRequest | ErrorBadRequestInvalidApiVersion | ErrorBadRequestInvalidEnumValue | ErrorBadRequestInvalidField | ErrorBadRequestMissingDependency | ErrorBadRequestMissingRequiredField | ErrorBadRequestParseError | ErrorBadRequestStaleSchemaFragments | ErrorBadRequestValueNotPermitted) & {
1105
+ export type ErrorBadRequest = ErrorBase & (ErrorBadRequestBadRequest | ErrorBadRequestInvalidApiVersion | ErrorBadRequestInvalidEnumValue | ErrorBadRequestInvalidField | ErrorBadRequestMissingDependency | ErrorBadRequestMissingRequiredField | ErrorBadRequestParseError | ErrorBadRequestStaleSchemaFragments | ErrorBadRequestUnexpectedJsonType | ErrorBadRequestValueNotPermitted) & {
881
1106
  type: ErrorBadRequestType;
882
1107
  };
883
1108
  /** error-bad-request-bad-request */
@@ -903,6 +1128,8 @@ export interface ErrorBadRequestInvalidField {
903
1128
  }
904
1129
  /** error-bad-request-missing-dependency */
905
1130
  export interface ErrorBadRequestMissingDependency {
1131
+ /** The dependent fields. */
1132
+ dependencies?: ErrorBadRequestMissingDependencyDependency[];
906
1133
  /** The field on which the value depends. */
907
1134
  dependent_field_name?: string;
908
1135
  /** The value which needs to be set of the dependent field. */
@@ -912,6 +1139,13 @@ export interface ErrorBadRequestMissingDependency {
912
1139
  /** The value that was received. */
913
1140
  provided_field_value?: string;
914
1141
  }
1142
+ /** error-bad-request-missing-dependency-dependency */
1143
+ export interface ErrorBadRequestMissingDependencyDependency {
1144
+ /** The dependent field name. */
1145
+ field_name: string;
1146
+ /** The dependent field value. */
1147
+ field_value: string;
1148
+ }
915
1149
  /** error-bad-request-missing-required-field */
916
1150
  export interface ErrorBadRequestMissingRequiredField {
917
1151
  /** The missing field's name. */
@@ -937,10 +1171,28 @@ export declare enum ErrorBadRequestType {
937
1171
  MissingRequiredField = "missing_required_field",
938
1172
  ParseError = "parse_error",
939
1173
  StaleSchemaFragments = "stale_schema_fragments",
1174
+ UnexpectedJsonType = "unexpected_json_type",
940
1175
  ValueNotPermitted = "value_not_permitted"
941
1176
  }
1177
+ /** error-bad-request-unexpected-json-type */
1178
+ export interface ErrorBadRequestUnexpectedJsonType {
1179
+ actual: ErrorBadRequestUnexpectedJsonTypeType;
1180
+ expected: ErrorBadRequestUnexpectedJsonTypeType;
1181
+ /** The field name that's invalid. */
1182
+ field_name: string;
1183
+ }
1184
+ export declare enum ErrorBadRequestUnexpectedJsonTypeType {
1185
+ Array = "array",
1186
+ Bool = "bool",
1187
+ Null = "null",
1188
+ Number = "number",
1189
+ Object = "object",
1190
+ String = "string"
1191
+ }
942
1192
  /** error-bad-request-value-not-permitted */
943
1193
  export interface ErrorBadRequestValueNotPermitted {
1194
+ /** The allowed values for the field. */
1195
+ allowed_values?: string[];
944
1196
  /** The field whose value is not permitted. */
945
1197
  field_name: string;
946
1198
  /** The reason the value isn't permitted. */
@@ -953,6 +1205,15 @@ export interface ErrorBase {
953
1205
  /** The message associated with the error. */
954
1206
  message?: string;
955
1207
  }
1208
+ /** error-conflict */
1209
+ export type ErrorConflict = ErrorBase & ErrorConflictConflict & {
1210
+ type: ErrorConflictType;
1211
+ };
1212
+ /** error-conflict-conflict */
1213
+ export type ErrorConflictConflict = object;
1214
+ export declare enum ErrorConflictType {
1215
+ Conflict = "conflict"
1216
+ }
956
1217
  /** error-forbidden */
957
1218
  export type ErrorForbidden = ErrorBase & ErrorForbiddenForbidden & {
958
1219
  type: ErrorForbiddenType;
@@ -1117,6 +1378,19 @@ export interface EventSlaTrackerDeleted {
1117
1378
  export interface EventSlaTrackerUpdated {
1118
1379
  sla_tracker: SlaTracker;
1119
1380
  }
1381
+ /** event-survey-response-created */
1382
+ export interface EventSurveyResponseCreated {
1383
+ survey_response: SurveyResponse;
1384
+ }
1385
+ /** event-survey-response-deleted */
1386
+ export interface EventSurveyResponseDeleted {
1387
+ /** The ID of the survey response that was deleted. */
1388
+ id: string;
1389
+ }
1390
+ /** event-survey-response-updated */
1391
+ export interface EventSurveyResponseUpdated {
1392
+ survey_response: SurveyResponse;
1393
+ }
1120
1394
  /** event-tag-created */
1121
1395
  export interface EventTagCreated {
1122
1396
  tag: Tag;
@@ -1198,6 +1472,12 @@ export type Issue = WorkBase & {
1198
1472
  developed_with?: PartSummary[];
1199
1473
  /** Priority of the work based upon impact and criticality. */
1200
1474
  priority?: IssuePriority;
1475
+ /**
1476
+ * Target start date for the object.
1477
+ * @format date-time
1478
+ * @example "2023-01-01T12:00:00.000Z"
1479
+ */
1480
+ target_start_date?: string;
1201
1481
  };
1202
1482
  /** Priority of the work based upon impact and criticality. */
1203
1483
  export declare enum IssuePriority {
@@ -1225,6 +1505,11 @@ export declare enum ListMode {
1225
1505
  After = "after",
1226
1506
  Before = "before"
1227
1507
  }
1508
+ /** metric-definition-summary */
1509
+ export type MetricDefinitionSummary = AtomBaseSummary & {
1510
+ /** Human readable name of the metric. */
1511
+ name?: string;
1512
+ };
1228
1513
  /** org-base */
1229
1514
  export type OrgBase = AtomBase & {
1230
1515
  /** Name of the Organization. */
@@ -1241,6 +1526,42 @@ export declare enum OrgEnvironment {
1241
1526
  Staging = "staging",
1242
1527
  Test = "test"
1243
1528
  }
1529
+ /**
1530
+ * Status determines how an item can be used. In 'draft' status an item
1531
+ * can be edited but can't be used. When 'published' the item can longer
1532
+ * be edited but can be used. 'Archived' is read-only.
1533
+ */
1534
+ export declare enum OrgScheduleStatus {
1535
+ Archived = "archived",
1536
+ Draft = "draft",
1537
+ Published = "published"
1538
+ }
1539
+ /** org-schedule-summary */
1540
+ export type OrgScheduleSummary = AtomBaseSummary & {
1541
+ /** Human-readable name. */
1542
+ name?: string;
1543
+ /**
1544
+ * Status determines how an item can be used. In 'draft' status an item
1545
+ * can be edited but can't be used. When 'published' the item can longer
1546
+ * be edited but can be used. 'Archived' is read-only.
1547
+ */
1548
+ status: OrgScheduleStatus;
1549
+ /**
1550
+ * Timezone in which this is defined. Only organization schedules in
1551
+ * the same timezone can be directly combined.
1552
+ */
1553
+ timezone?: string;
1554
+ /**
1555
+ * Derived field indicating when a valid organization schedule will
1556
+ * become invalid. If omitted, the schedule is already invalid. A
1557
+ * schedule is valid if it has a weekly schedule for all named periods
1558
+ * for all its schedule fragments, and if it has a schedule fragment
1559
+ * for the time period in question.
1560
+ * @format date-time
1561
+ * @example "2023-01-01T12:00:00.000Z"
1562
+ */
1563
+ valid_until?: string;
1564
+ };
1244
1565
  /** org-summary */
1245
1566
  export type OrgSummary = RevOrgSummary & {
1246
1567
  type: OrgType;
@@ -1598,6 +1919,8 @@ export interface RevOrgsListRequest {
1598
1919
  * iteration starts from the beginning.
1599
1920
  */
1600
1921
  cursor?: string;
1922
+ /** Array of display names of Rev orgs to be filtered. */
1923
+ display_name?: string[];
1601
1924
  /** List of external refs to filter Rev organizations for. */
1602
1925
  external_ref?: string[];
1603
1926
  /**
@@ -1711,6 +2034,27 @@ export interface SetTagWithValue {
1711
2034
  */
1712
2035
  value?: string;
1713
2036
  }
2037
+ /**
2038
+ * Status determines how an item can be used. In 'draft' status an item
2039
+ * can be edited but can't be used. When 'published' the item can longer
2040
+ * be edited but can be used. 'Archived' is read-only.
2041
+ */
2042
+ export declare enum SlaStatus {
2043
+ Archived = "archived",
2044
+ Draft = "draft",
2045
+ Published = "published"
2046
+ }
2047
+ /** sla-summary */
2048
+ export type SlaSummary = AtomBaseSummary & {
2049
+ /** Human-readable name. */
2050
+ name: string;
2051
+ /**
2052
+ * Status determines how an item can be used. In 'draft' status an item
2053
+ * can be edited but can't be used. When 'published' the item can longer
2054
+ * be edited but can be used. 'Archived' is read-only.
2055
+ */
2056
+ status: SlaStatus;
2057
+ };
1714
2058
  /**
1715
2059
  * sla-summary-filter
1716
2060
  * The filter for SLA summary.
@@ -1733,7 +2077,37 @@ export declare enum SlaSummaryStage {
1733
2077
  Warning = "warning"
1734
2078
  }
1735
2079
  /** sla-tracker */
1736
- export type SlaTracker = AtomBase;
2080
+ export type SlaTracker = AtomBase & {
2081
+ /** Details of the object on which the SLA is being tracked. */
2082
+ applies_to_id?: string;
2083
+ /** Summary of the metrics target being tracked in the SLA tracker. */
2084
+ metric_target_summaries: ArchetypeMetricTarget[];
2085
+ sla?: SlaSummary;
2086
+ /**
2087
+ * Details of the applicable SLA policy. Can be omitted if no sla
2088
+ * applies, or if no policy of the sla applies at the moment.
2089
+ */
2090
+ sla_policy_id?: string;
2091
+ /** SLA stage of the object being tracked. */
2092
+ stage?: string;
2093
+ /**
2094
+ * It is an indicator of whether the SLA has ever been breached
2095
+ * (missed). If not, it shows whether the SLA is completed, in
2096
+ * progress, or nil - if no policy is applied.
2097
+ */
2098
+ status?: string;
2099
+ };
2100
+ /** sla-tracker-summary */
2101
+ export type SlaTrackerSummary = AtomBaseSummary;
2102
+ /** sla-trackers-get-request */
2103
+ export interface SlaTrackersGetRequest {
2104
+ /** The ID of the SLA tracker to get. */
2105
+ id: string;
2106
+ }
2107
+ /** sla-trackers-get-response */
2108
+ export interface SlaTrackersGetResponse {
2109
+ sla_tracker: SlaTracker;
2110
+ }
1737
2111
  /** snap-widget */
1738
2112
  export interface SnapWidget {
1739
2113
  type: SnapWidgetType;
@@ -1763,11 +2137,70 @@ export interface StageUpdate {
1763
2137
  /** The updated name of the stage, otherwise unchanged if not set. */
1764
2138
  name?: string;
1765
2139
  }
2140
+ /** Type of stage validation options when creating an object. */
2141
+ export declare enum StageValidationOptionForCreate {
2142
+ AllowNonStart = "allow_non_start"
2143
+ }
2144
+ /** Type of state validation options when updating the stage of an object. */
2145
+ export declare enum StageValidationOptionForUpdate {
2146
+ AllowInvalidTransition = "allow_invalid_transition"
2147
+ }
2148
+ /** staged-info-filter */
2149
+ export interface StagedInfoFilter {
2150
+ /** Filters for issues that are staged. */
2151
+ is_staged?: boolean;
2152
+ }
1766
2153
  /**
1767
2154
  * survey-aggregation-filter
1768
2155
  * The filter for survey aggregation.
1769
2156
  */
1770
2157
  export type SurveyAggregationFilter = object;
2158
+ /** survey-response */
2159
+ export type SurveyResponse = AtomBase & {
2160
+ /** The unique ID associated with the dispatched survey. */
2161
+ dispatch_id?: string;
2162
+ /** The ID of the object for which survey is taken. */
2163
+ object?: string;
2164
+ /** Response for the survey. */
2165
+ response?: object;
2166
+ /** The ID of the survey for which response is taken. */
2167
+ survey?: string;
2168
+ };
2169
+ /** sync-metadata-filter */
2170
+ export interface SyncMetadataFilter {
2171
+ last_sync_in?: SyncMetadataFilterSyncInFilter;
2172
+ last_sync_out?: SyncMetadataFilterSyncOutFilter;
2173
+ /** Filters for issues synced from this specific origin system. */
2174
+ origin_system?: string[];
2175
+ }
2176
+ /** sync-metadata-filter-sync-in-filter */
2177
+ export interface SyncMetadataFilterSyncInFilter {
2178
+ /** Filters for works with selected sync statuses. */
2179
+ status?: SyncMetadataFilterSyncInFilterStatus[];
2180
+ /** Provides ways to specify date ranges on objects. */
2181
+ sync_date?: DateFilter;
2182
+ /** Filters for works modified with selected sync units. */
2183
+ sync_unit?: string[];
2184
+ }
2185
+ export declare enum SyncMetadataFilterSyncInFilterStatus {
2186
+ Failed = "failed",
2187
+ Modified = "modified",
2188
+ Staged = "staged",
2189
+ Succeeded = "succeeded"
2190
+ }
2191
+ /** sync-metadata-filter-sync-out-filter */
2192
+ export interface SyncMetadataFilterSyncOutFilter {
2193
+ /** Filters for works with selected sync statuses. */
2194
+ status?: SyncMetadataFilterSyncOutFilterStatus[];
2195
+ /** Provides ways to specify date ranges on objects. */
2196
+ sync_date?: DateFilter;
2197
+ /** Filters for works modified with selected sync units. */
2198
+ sync_unit?: string[];
2199
+ }
2200
+ export declare enum SyncMetadataFilterSyncOutFilterStatus {
2201
+ Failed = "failed",
2202
+ Succeeded = "succeeded"
2203
+ }
1771
2204
  /** sys-user-summary */
1772
2205
  export type SysUserSummary = UserBaseSummary;
1773
2206
  /** tag */
@@ -1950,6 +2383,7 @@ export type Ticket = WorkBase & {
1950
2383
  rev_org?: OrgSummary;
1951
2384
  /** Severity of the ticket. */
1952
2385
  severity?: TicketSeverity;
2386
+ sla_tracker?: SlaTrackerSummary;
1953
2387
  /** Source channel of the ticket. */
1954
2388
  source_channel?: string;
1955
2389
  };
@@ -2027,7 +2461,7 @@ export type TimelineEntriesCreateRequest = TimelineEntriesCreateRequestTimelineC
2027
2461
  export interface TimelineEntriesCreateRequestTimelineComment {
2028
2462
  /**
2029
2463
  * The IDs of the artifacts attached to the comment.
2030
- * @maxItems 10
2464
+ * @maxItems 50
2031
2465
  * @example ["ARTIFACT-12345"]
2032
2466
  */
2033
2467
  artifacts?: string[];
@@ -2177,7 +2611,7 @@ export interface TimelineEntriesUpdateRequestTimelineCommentArtifacts {
2177
2611
  remove?: string[];
2178
2612
  /**
2179
2613
  * Sets the field to the provided artifacts.
2180
- * @maxItems 10
2614
+ * @maxItems 50
2181
2615
  * @example ["ARTIFACT-12345"]
2182
2616
  */
2183
2617
  set?: string[];
@@ -2342,6 +2776,9 @@ export interface WebhookEventRequest {
2342
2776
  sla_tracker_created?: EventSlaTrackerCreated;
2343
2777
  sla_tracker_deleted?: EventSlaTrackerDeleted;
2344
2778
  sla_tracker_updated?: EventSlaTrackerUpdated;
2779
+ survey_response_created?: EventSurveyResponseCreated;
2780
+ survey_response_deleted?: EventSurveyResponseDeleted;
2781
+ survey_response_updated?: EventSurveyResponseUpdated;
2345
2782
  tag_created?: EventTagCreated;
2346
2783
  tag_deleted?: EventTagDeleted;
2347
2784
  tag_updated?: EventTagUpdated;
@@ -2401,6 +2838,9 @@ export declare enum WebhookEventType {
2401
2838
  RevUserCreated = "rev_user_created",
2402
2839
  RevUserDeleted = "rev_user_deleted",
2403
2840
  RevUserUpdated = "rev_user_updated",
2841
+ SlaTrackerCreated = "sla_tracker_created",
2842
+ SlaTrackerDeleted = "sla_tracker_deleted",
2843
+ SlaTrackerUpdated = "sla_tracker_updated",
2404
2844
  TagCreated = "tag_created",
2405
2845
  TagDeleted = "tag_deleted",
2406
2846
  TagUpdated = "tag_updated",
@@ -2623,6 +3063,8 @@ export type WorksCreateRequest = (WorksCreateRequestIssue | WorksCreateRequestTi
2623
3063
  reported_by?: string[];
2624
3064
  /** Sets an object's initial stage. */
2625
3065
  stage?: StageInit;
3066
+ /** The type of stage validations options when creating a work item. */
3067
+ stage_validation_options?: StageValidationOptionForCreate[];
2626
3068
  /** Tags associated with the work item. */
2627
3069
  tags?: SetTagWithValue[];
2628
3070
  /**
@@ -2652,6 +3094,12 @@ export interface WorksCreateRequestIssue {
2652
3094
  priority_v2?: number;
2653
3095
  /** The sprint that the issue belongs to. */
2654
3096
  sprint?: string;
3097
+ /**
3098
+ * Timestamp for when the work is expected to start.
3099
+ * @format date-time
3100
+ * @example "2023-01-01T12:00:00.000Z"
3101
+ */
3102
+ target_start_date?: string;
2655
3103
  }
2656
3104
  /** works-create-request-ticket */
2657
3105
  export interface WorksCreateRequestTicket {
@@ -2661,6 +3109,8 @@ export interface WorksCreateRequestTicket {
2661
3109
  group?: string;
2662
3110
  /** Whether the ticket is spam. */
2663
3111
  is_spam?: boolean;
3112
+ /** Whether the ticket needs a response. */
3113
+ needs_response?: boolean;
2664
3114
  /**
2665
3115
  * The Rev organization that the ticket is associated with.
2666
3116
  * @example "REV-AbCdEfGh"
@@ -2722,6 +3172,8 @@ export interface WorksExportRequest {
2722
3172
  reported_by?: string[];
2723
3173
  /** The filter for stages. */
2724
3174
  stage?: StageFilter;
3175
+ staged_info?: StagedInfoFilter;
3176
+ sync_metadata?: SyncMetadataFilter;
2725
3177
  /**
2726
3178
  * Filters for work with any of the provided tags.
2727
3179
  * @example ["TAG-12345"]
@@ -2745,6 +3197,8 @@ export interface WorksFilterIssue {
2745
3197
  * @example ["ACC-12345"]
2746
3198
  */
2747
3199
  accounts?: string[];
3200
+ /** Provides ways to specify date ranges on objects. */
3201
+ actual_start_date?: DateFilter;
2748
3202
  /** Filters for issues with any of the provided priorities. */
2749
3203
  priority?: IssuePriority[];
2750
3204
  /** Filters for issues with any of the provided priority enum ids. */
@@ -2754,6 +3208,8 @@ export interface WorksFilterIssue {
2754
3208
  * @example ["REV-AbCdEfGh"]
2755
3209
  */
2756
3210
  rev_orgs?: string[];
3211
+ /** Provides ways to specify date ranges on objects. */
3212
+ target_start_date?: DateFilter;
2757
3213
  }
2758
3214
  /** works-filter-ticket */
2759
3215
  export interface WorksFilterTicket {
@@ -2841,6 +3297,8 @@ export interface WorksListRequest {
2841
3297
  reported_by?: string[];
2842
3298
  /** The filter for stages. */
2843
3299
  stage?: StageFilter;
3300
+ staged_info?: StagedInfoFilter;
3301
+ sync_metadata?: SyncMetadataFilter;
2844
3302
  /**
2845
3303
  * Filters for work with any of the provided tags.
2846
3304
  * @example ["TAG-12345"]
@@ -2874,7 +3332,7 @@ export type WorksUpdateRequest = (Empty | WorksUpdateRequestIssue | WorksUpdateR
2874
3332
  * @example "PROD-12345"
2875
3333
  */
2876
3334
  applies_to_part?: string;
2877
- artifacts?: WorksUpdateRequestArtifactIds;
3335
+ artifacts?: WorksUpdateRequestArtifacts;
2878
3336
  /** Updated body of the work object, or unchanged if not provided. */
2879
3337
  body?: string;
2880
3338
  /**
@@ -2886,6 +3344,11 @@ export type WorksUpdateRequest = (Empty | WorksUpdateRequestIssue | WorksUpdateR
2886
3344
  reported_by?: WorksUpdateRequestReportedBy;
2887
3345
  /** Updates an object's stage. */
2888
3346
  stage?: StageUpdate;
3347
+ /**
3348
+ * The type of stage validations options when updating the stage of an
3349
+ * object.
3350
+ */
3351
+ stage_validation_options?: StageValidationOptionForUpdate[];
2889
3352
  staged_info?: WorksUpdateRequestStagedInfoStagedInfoUpdate;
2890
3353
  tags?: WorksUpdateRequestTags;
2891
3354
  /**
@@ -2898,10 +3361,23 @@ export type WorksUpdateRequest = (Empty | WorksUpdateRequestIssue | WorksUpdateR
2898
3361
  title?: string;
2899
3362
  type?: WorkType;
2900
3363
  };
2901
- /** works-update-request-artifact-ids */
2902
- export interface WorksUpdateRequestArtifactIds {
3364
+ /** works-update-request-artifacts */
3365
+ export interface WorksUpdateRequestArtifacts {
3366
+ /**
3367
+ * Adds the provided artifacts (if not already present) to the field.
3368
+ * @maxItems 50
3369
+ * @example ["ARTIFACT-12345"]
3370
+ */
3371
+ add?: string[];
3372
+ /**
3373
+ * Removes the provided artifacts (if they exist) from the field.
3374
+ * @maxItems 50
3375
+ * @example ["ARTIFACT-12345"]
3376
+ */
3377
+ remove?: string[];
2903
3378
  /**
2904
- * Sets the IDs to the provided artifact IDs.
3379
+ * Sets the field to the provided artifacts.
3380
+ * @maxItems 50
2905
3381
  * @example ["ARTIFACT-12345"]
2906
3382
  */
2907
3383
  set?: string[];
@@ -2918,6 +3394,12 @@ export interface WorksUpdateRequestIssue {
2918
3394
  priority_v2?: number;
2919
3395
  /** Updates the sprint that the issue belongs to. */
2920
3396
  sprint?: string | null;
3397
+ /**
3398
+ * Updates the timestamp for when the work is expected to start.
3399
+ * @format date-time
3400
+ * @example "2023-01-01T12:00:00.000Z"
3401
+ */
3402
+ target_start_date?: string | null;
2921
3403
  }
2922
3404
  /** works-update-request-issue-developed-with */
2923
3405
  export interface WorksUpdateRequestIssueDevelopedWith {
@@ -2962,6 +3444,8 @@ export interface WorksUpdateRequestTicket {
2962
3444
  group?: string | null;
2963
3445
  /** Updates whether the ticket is spam. */
2964
3446
  is_spam?: boolean;
3447
+ /** Updates whether the ticket needs a response. */
3448
+ needs_response?: boolean;
2965
3449
  /**
2966
3450
  * Updates the Rev organization that the ticket is associated with.
2967
3451
  * @example "REV-AbCdEfGh"
@@ -3028,6 +3512,190 @@ export declare class HttpClient<SecurityDataType = unknown> {
3028
3512
  * DevRev's REST API.
3029
3513
  */
3030
3514
  export declare class Api<SecurityDataType extends unknown> extends HttpClient<SecurityDataType> {
3515
+ /**
3516
+ * @description Creates an account, which is a record representing a customer or an organization.
3517
+ *
3518
+ * @tags accounts
3519
+ * @name AccountsCreate
3520
+ * @request POST:/accounts.create
3521
+ * @secure
3522
+ */
3523
+ accountsCreate: (data: AccountsCreateRequest, params?: RequestParams) => Promise<AxiosResponse<AccountsCreateResponse, any>>;
3524
+ /**
3525
+ * @description Deletes an account.
3526
+ *
3527
+ * @tags accounts
3528
+ * @name AccountsDelete
3529
+ * @request POST:/accounts.delete
3530
+ * @secure
3531
+ */
3532
+ accountsDelete: (data: AccountsDeleteRequest, params?: RequestParams) => Promise<AxiosResponse<object, any>>;
3533
+ /**
3534
+ * @description Exports a collection of accounts.
3535
+ *
3536
+ * @tags accounts
3537
+ * @name AccountsExport
3538
+ * @request GET:/accounts.export
3539
+ * @secure
3540
+ */
3541
+ accountsExport: (query?: {
3542
+ /** Filters for accounts created by the specified user(s). */
3543
+ created_by?: string[];
3544
+ /**
3545
+ * Filters for objects created after the provided timestamp (inclusive).
3546
+ * @format date-time
3547
+ * @example "2023-01-01T12:00:00.000Z"
3548
+ */
3549
+ 'created_date.after'?: string;
3550
+ /**
3551
+ * Filters for objects created before the provided timestamp
3552
+ * (inclusive).
3553
+ * @format date-time
3554
+ * @example "2023-01-01T12:00:00.000Z"
3555
+ */
3556
+ 'created_date.before'?: string;
3557
+ /** Array of display names of accounts to be filtered. */
3558
+ display_name?: string[];
3559
+ /** Array of references of accounts to be filtered. */
3560
+ external_refs?: string[];
3561
+ /**
3562
+ * The number of accounts to return. The default is '50'.
3563
+ * @format int32
3564
+ * @min 1
3565
+ * @max 500
3566
+ */
3567
+ first?: number;
3568
+ /**
3569
+ * Filters for objects created after the provided timestamp (inclusive).
3570
+ * @format date-time
3571
+ * @example "2023-01-01T12:00:00.000Z"
3572
+ */
3573
+ 'modified_date.after'?: string;
3574
+ /**
3575
+ * Filters for objects created before the provided timestamp
3576
+ * (inclusive).
3577
+ * @format date-time
3578
+ * @example "2023-01-01T12:00:00.000Z"
3579
+ */
3580
+ 'modified_date.before'?: string;
3581
+ /** Fields to sort the accounts by and the direction to sort them in. */
3582
+ sort_by?: string[];
3583
+ /** Filters for accounts on specified stages. */
3584
+ stage?: string[];
3585
+ }, params?: RequestParams) => Promise<AxiosResponse<AccountsExportResponse, any>>;
3586
+ /**
3587
+ * @description Exports a collection of accounts.
3588
+ *
3589
+ * @tags accounts
3590
+ * @name AccountsExportPost
3591
+ * @request POST:/accounts.export
3592
+ * @secure
3593
+ */
3594
+ accountsExportPost: (data: AccountsExportRequest, params?: RequestParams) => Promise<AxiosResponse<AccountsExportResponse, any>>;
3595
+ /**
3596
+ * @description Retrieves an account's information.
3597
+ *
3598
+ * @tags accounts
3599
+ * @name AccountsGet
3600
+ * @request GET:/accounts.get
3601
+ * @secure
3602
+ */
3603
+ accountsGet: (query: {
3604
+ /**
3605
+ * The ID of the account to be retrieved.
3606
+ * @example "ACC-12345"
3607
+ */
3608
+ id: string;
3609
+ }, params?: RequestParams) => Promise<AxiosResponse<AccountsGetResponse, any>>;
3610
+ /**
3611
+ * @description Retrieves an account's information.
3612
+ *
3613
+ * @tags accounts
3614
+ * @name AccountsGetPost
3615
+ * @request POST:/accounts.get
3616
+ * @secure
3617
+ */
3618
+ accountsGetPost: (data: AccountsGetRequest, params?: RequestParams) => Promise<AxiosResponse<AccountsGetResponse, any>>;
3619
+ /**
3620
+ * @description Gets a list of accounts.
3621
+ *
3622
+ * @tags accounts
3623
+ * @name AccountsList
3624
+ * @request GET:/accounts.list
3625
+ * @secure
3626
+ */
3627
+ accountsList: (query?: {
3628
+ /** Filters for accounts created by the specified user(s). */
3629
+ created_by?: string[];
3630
+ /**
3631
+ * Filters for objects created after the provided timestamp (inclusive).
3632
+ * @format date-time
3633
+ * @example "2023-01-01T12:00:00.000Z"
3634
+ */
3635
+ 'created_date.after'?: string;
3636
+ /**
3637
+ * Filters for objects created before the provided timestamp
3638
+ * (inclusive).
3639
+ * @format date-time
3640
+ * @example "2023-01-01T12:00:00.000Z"
3641
+ */
3642
+ 'created_date.before'?: string;
3643
+ /**
3644
+ * The cursor to resume iteration from. If not provided, then iteration
3645
+ * starts from the beginning.
3646
+ */
3647
+ cursor?: string;
3648
+ /** Array of display names of accounts to be filtered. */
3649
+ display_name?: string[];
3650
+ /** Array of references of accounts to be filtered. */
3651
+ external_refs?: string[];
3652
+ /**
3653
+ * The maximum number of accounts to return per page. The default is
3654
+ * '50'.
3655
+ * @format int32
3656
+ */
3657
+ limit?: number;
3658
+ /**
3659
+ * The iteration mode to use, otherwise if not set, then "after" is
3660
+ * used.
3661
+ */
3662
+ mode?: ListMode;
3663
+ /**
3664
+ * Filters for objects created after the provided timestamp (inclusive).
3665
+ * @format date-time
3666
+ * @example "2023-01-01T12:00:00.000Z"
3667
+ */
3668
+ 'modified_date.after'?: string;
3669
+ /**
3670
+ * Filters for objects created before the provided timestamp
3671
+ * (inclusive).
3672
+ * @format date-time
3673
+ * @example "2023-01-01T12:00:00.000Z"
3674
+ */
3675
+ 'modified_date.before'?: string;
3676
+ /** Fields to sort the accounts by and the direction to sort them in. */
3677
+ sort_by?: string[];
3678
+ /** Filters for accounts on specified stages. */
3679
+ stage?: string[];
3680
+ }, params?: RequestParams) => Promise<AxiosResponse<AccountsListResponse, any>>;
3681
+ /**
3682
+ * @description Gets a list of accounts.
3683
+ *
3684
+ * @tags accounts
3685
+ * @name AccountsListPost
3686
+ * @request POST:/accounts.list
3687
+ * @secure
3688
+ */
3689
+ accountsListPost: (data: AccountsListRequest, params?: RequestParams) => Promise<AxiosResponse<AccountsListResponse, any>>;
3690
+ /**
3691
+ * @description Updates an account's information.
3692
+ *
3693
+ * @tags accounts
3694
+ * @name AccountsUpdate
3695
+ * @request POST:/accounts.update
3696
+ * @secure
3697
+ */
3698
+ accountsUpdate: (data: AccountsUpdateRequest, params?: RequestParams) => Promise<AxiosResponse<AccountsUpdateResponse, any>>;
3031
3699
  /**
3032
3700
  * @description Gets the requested artifact's information.
3033
3701
  *
@@ -3062,9 +3730,9 @@ export declare class Api<SecurityDataType extends unknown> extends HttpClient<Se
3062
3730
  * @request GET:/artifacts.list
3063
3731
  * @secure
3064
3732
  */
3065
- artifactsList: (query: {
3733
+ artifactsList: (query?: {
3066
3734
  /** The ID of the object to filter artifacts. */
3067
- parent_id: string;
3735
+ parent_id?: string;
3068
3736
  }, params?: RequestParams) => Promise<AxiosResponse<ArtifactsListResponse, any>>;
3069
3737
  /**
3070
3738
  * @description List the artifacts attached to an object.
@@ -3549,6 +4217,8 @@ export declare class Api<SecurityDataType extends unknown> extends HttpClient<Se
3549
4217
  * starts from the beginning.
3550
4218
  */
3551
4219
  cursor?: string;
4220
+ /** Array of display names of Rev orgs to be filtered. */
4221
+ display_name?: string[];
3552
4222
  /** List of external refs to filter Rev organizations for. */
3553
4223
  external_ref?: string[];
3554
4224
  /**
@@ -3598,6 +4268,27 @@ export declare class Api<SecurityDataType extends unknown> extends HttpClient<Se
3598
4268
  * @secure
3599
4269
  */
3600
4270
  revOrgsUpdate: (data: RevOrgsUpdateRequest, params?: RequestParams) => Promise<AxiosResponse<RevOrgsUpdateResponse, any>>;
4271
+ /**
4272
+ * @description Gets an SLA tracker.
4273
+ *
4274
+ * @tags slas
4275
+ * @name SlaTrackersGet
4276
+ * @request GET:/sla-trackers.get
4277
+ * @secure
4278
+ */
4279
+ slaTrackersGet: (query: {
4280
+ /** The ID of the SLA tracker to get. */
4281
+ id: string;
4282
+ }, params?: RequestParams) => Promise<AxiosResponse<SlaTrackersGetResponse, any>>;
4283
+ /**
4284
+ * @description Gets an SLA tracker.
4285
+ *
4286
+ * @tags slas
4287
+ * @name SlaTrackersGetPost
4288
+ * @request POST:/sla-trackers.get
4289
+ * @secure
4290
+ */
4291
+ slaTrackersGetPost: (data: SlaTrackersGetRequest, params?: RequestParams) => Promise<AxiosResponse<SlaTrackersGetResponse, any>>;
3601
4292
  /**
3602
4293
  * @description Creates a new tag, which is used to create associations between objects and a logical concept denoted by the tag's name.
3603
4294
  *
@@ -3922,6 +4613,18 @@ export declare class Api<SecurityDataType extends unknown> extends HttpClient<Se
3922
4613
  reported_by?: string[];
3923
4614
  /** Filters for records in the provided stage(s) by name. */
3924
4615
  'stage.name'?: string[];
4616
+ /** Filters for issues that are staged. */
4617
+ 'staged_info.is_staged'?: boolean;
4618
+ /** Filters for works with selected sync statuses. */
4619
+ 'sync_metadata.last_sync_in.status'?: SyncMetadataFilterSyncInFilterStatus[];
4620
+ /** Filters for works modified with selected sync units. */
4621
+ 'sync_metadata.last_sync_in.sync_unit'?: string[];
4622
+ /** Filters for works with selected sync statuses. */
4623
+ 'sync_metadata.last_sync_out.status'?: SyncMetadataFilterSyncOutFilterStatus[];
4624
+ /** Filters for works modified with selected sync units. */
4625
+ 'sync_metadata.last_sync_out.sync_unit'?: string[];
4626
+ /** Filters for issues synced from this specific origin system. */
4627
+ 'sync_metadata.origin_system'?: string[];
3925
4628
  /**
3926
4629
  * Filters for work with any of the provided tags.
3927
4630
  * @example ["TAG-12345"]
@@ -4043,6 +4746,18 @@ export declare class Api<SecurityDataType extends unknown> extends HttpClient<Se
4043
4746
  reported_by?: string[];
4044
4747
  /** Filters for records in the provided stage(s) by name. */
4045
4748
  'stage.name'?: string[];
4749
+ /** Filters for issues that are staged. */
4750
+ 'staged_info.is_staged'?: boolean;
4751
+ /** Filters for works with selected sync statuses. */
4752
+ 'sync_metadata.last_sync_in.status'?: SyncMetadataFilterSyncInFilterStatus[];
4753
+ /** Filters for works modified with selected sync units. */
4754
+ 'sync_metadata.last_sync_in.sync_unit'?: string[];
4755
+ /** Filters for works with selected sync statuses. */
4756
+ 'sync_metadata.last_sync_out.status'?: SyncMetadataFilterSyncOutFilterStatus[];
4757
+ /** Filters for works modified with selected sync units. */
4758
+ 'sync_metadata.last_sync_out.sync_unit'?: string[];
4759
+ /** Filters for issues synced from this specific origin system. */
4760
+ 'sync_metadata.origin_system'?: string[];
4046
4761
  /**
4047
4762
  * Filters for work with any of the provided tags.
4048
4763
  * @example ["TAG-12345"]