@databricks/sdk-jobs 0.1.0-dev.4 → 0.1.0-dev.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md ADDED
@@ -0,0 +1,28 @@
1
+ # @databricks/sdk-jobs
2
+
3
+ > [!WARNING]
4
+ >
5
+ > ## PREVIEW - NOT FOR PRODUCTION USE
6
+ >
7
+ > **This SDK is in preview and is subject to change without notice.**
8
+ >
9
+ > - **Do NOT use in production environments**
10
+ > - **Breaking changes may occur at any time**
11
+ > - **APIs are experimental and unstable**
12
+ > - **Use for development and testing only**
13
+
14
+ ## Installation
15
+
16
+ ```bash
17
+ npm install @databricks/sdk-jobs
18
+ ```
19
+
20
+ ## Usage
21
+
22
+ ```typescript
23
+ import {JobsClient} from '@databricks/sdk-jobs/v2';
24
+
25
+ const client = new JobsClient({});
26
+ ```
27
+
28
+ For a full getting-started guide, see the [root README](../../README.md).
@@ -3,12 +3,12 @@ import type { ClientOptions } from '@databricks/sdk-options/client';
3
3
  import type { LroOptions } from '@databricks/sdk-options/lro';
4
4
  import type { BaseJob, BaseRun, CancelAllRunsRequest, CancelAllRunsResponse, CancelRunRequest, CreateJobRequest, CreateJobResponse, DeleteJobRequest, DeleteJobResponse, DeleteRunRequest, DeleteRunResponse, EnforcePolicyComplianceForJob, EnforcePolicyComplianceResponse, ExportRunRequest, ExportRunResponse, GetJobRequest, GetJobResponse, GetPolicyComplianceForJob, GetPolicyComplianceForJobResponse, GetRunOutputRequest, GetRunOutputResponse, GetRunRequest, GetRunResponse, ListJobComplianceForPolicy, ListJobComplianceForPolicy_JobCompliance, ListJobComplianceResponse, ListJobsRequest, ListJobsResponse, ListRunsRequest, ListRunsResponse, RepairRunRequest, ResetJobRequest, ResetJobResponse, RunNowRequest, SubmitRunRequest, UpdateJobRequest, UpdateJobResponse } from './model';
5
5
  export declare class JobsClient {
6
- private readonly host;
7
- private readonly workspaceId;
8
- private readonly httpClient;
6
+ private readonly options;
9
7
  private readonly logger;
10
8
  private readonly userAgent;
9
+ private config;
11
10
  constructor(options: ClientOptions);
11
+ private resolveConfig;
12
12
  /**
13
13
  * Updates a job so the job clusters that are created when running
14
14
  * the job (specified in `new_cluster`) are compliant with the
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/v2/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/v2/client.ts"],"names":[],"mappings":"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"}
package/dist/v2/client.js CHANGED
@@ -2,7 +2,7 @@
2
2
  import { VERSION as AUTH_VERSION } from '@databricks/sdk-auth';
3
3
  import { createDefault } from '@databricks/sdk-core/clientinfo';
4
4
  import { NoOpLogger } from '@databricks/sdk-core/logger';
5
- import { newHttpClient } from './transport';
5
+ import { resolveClientConfig } from './transport';
6
6
  import { buildHttpRequest, executeCall, executeHttpCall, marshalRequest, parseResponse, executeWait, StillRunningError, } from './utils';
7
7
  import pkgJson from '../../package.json' with { type: 'json' };
8
8
  import { RunLifeCycleState_RunLifeCycleState, marshalCancelAllRunsRequestSchema, marshalCancelRunRequestSchema, marshalCreateJobRequestSchema, marshalDeleteJobRequestSchema, marshalDeleteRunRequestSchema, marshalEnforcePolicyComplianceForJobSchema, marshalRepairRunRequestSchema, marshalResetJobRequestSchema, marshalRunNowRequestSchema, marshalSubmitRunRequestSchema, marshalUpdateJobRequestSchema, unmarshalCancelAllRunsResponseSchema, unmarshalCancelRunResponseSchema, unmarshalCreateJobResponseSchema, unmarshalDeleteJobResponseSchema, unmarshalDeleteRunResponseSchema, unmarshalEnforcePolicyComplianceResponseSchema, unmarshalExportRunResponseSchema, unmarshalGetJobResponseSchema, unmarshalGetPolicyComplianceForJobResponseSchema, unmarshalGetRunOutputResponseSchema, unmarshalGetRunResponseSchema, unmarshalListJobComplianceResponseSchema, unmarshalListJobsResponseSchema, unmarshalListRunsResponseSchema, unmarshalRepairRunResponseSchema, unmarshalResetJobResponseSchema, unmarshalRunNowResponseSchema, unmarshalSubmitRunResponseSchema, unmarshalUpdateJobResponseSchema, } from './model';
@@ -12,30 +12,28 @@ const PACKAGE_SEGMENT = {
12
12
  value: pkgJson.version,
13
13
  };
14
14
  export class JobsClient {
15
- host;
16
- // Workspace ID used to route workspace-level calls on unified hosts (SPOG).
17
- // When set, workspace-level methods send X-Databricks-Org-Id on every
18
- // request.
19
- workspaceId;
20
- httpClient;
15
+ options;
21
16
  logger;
22
17
  // User-Agent header value. Composed once at construction from
23
18
  // createDefault() merged with this package's identity and the active
24
19
  // credential's name.
25
20
  userAgent;
21
+ // Memoized configuration. The profile is resolved once, lazily, on the first
22
+ // request, then reused; host, workspaceId/accountId, and credentials are
23
+ // filled from it when not set explicitly on the options.
24
+ config;
26
25
  constructor(options) {
27
- if (options.host === undefined) {
28
- throw new Error('Host is required.');
29
- }
30
- this.host = options.host.replace(/\/$/, '');
31
- this.workspaceId = options.workspaceId;
26
+ this.options = options;
32
27
  this.logger = options.logger ?? new NoOpLogger();
33
28
  const info = createDefault()
34
29
  .with(PACKAGE_SEGMENT)
35
30
  .with({ key: 'sdk-js-auth', value: AUTH_VERSION })
36
31
  .with({ key: 'auth', value: options.credentials?.name() ?? 'default' });
37
32
  this.userAgent = info.toString();
38
- this.httpClient = newHttpClient(options);
33
+ }
34
+ resolveConfig() {
35
+ this.config ??= resolveClientConfig(this.options);
36
+ return this.config;
39
37
  }
40
38
  /**
41
39
  * Updates a job so the job clusters that are created when running
@@ -44,19 +42,20 @@ export class JobsClient {
44
42
  * All-purpose clusters used in the job will not be updated.
45
43
  */
46
44
  async enforcePolicyComplianceForJob(req, options) {
47
- const url = `${this.host}/api/2.0/policies/jobs/enforce-compliance`;
45
+ const { host, workspaceId, httpClient } = await this.resolveConfig();
46
+ const url = `${host}/api/2.0/policies/jobs/enforce-compliance`;
48
47
  const body = marshalRequest(req, marshalEnforcePolicyComplianceForJobSchema);
49
48
  let resp;
50
49
  const call = async (callSignal) => {
51
50
  const headers = new Headers({ 'Content-Type': 'application/json' });
52
- if (this.workspaceId !== undefined) {
53
- headers.set('X-Databricks-Org-Id', this.workspaceId);
51
+ if (workspaceId !== undefined) {
52
+ headers.set('X-Databricks-Org-Id', workspaceId);
54
53
  }
55
54
  headers.set('User-Agent', this.userAgent);
56
55
  const httpReq = buildHttpRequest('POST', url, headers, callSignal, body);
57
56
  const respBody = await executeHttpCall({
58
57
  request: httpReq,
59
- httpClient: this.httpClient,
58
+ httpClient,
60
59
  logger: this.logger,
61
60
  });
62
61
  resp = parseResponse(respBody, unmarshalEnforcePolicyComplianceResponseSchema);
@@ -74,7 +73,8 @@ export class JobsClient {
74
73
  * their updated policies.
75
74
  */
76
75
  async getPolicyComplianceForJob(req, options) {
77
- const url = `${this.host}/api/2.0/policies/jobs/get-compliance`;
76
+ const { host, workspaceId, httpClient } = await this.resolveConfig();
77
+ const url = `${host}/api/2.0/policies/jobs/get-compliance`;
78
78
  const params = new URLSearchParams();
79
79
  if (req.jobId !== undefined) {
80
80
  params.append('job_id', String(req.jobId));
@@ -84,14 +84,14 @@ export class JobsClient {
84
84
  let resp;
85
85
  const call = async (callSignal) => {
86
86
  const headers = new Headers();
87
- if (this.workspaceId !== undefined) {
88
- headers.set('X-Databricks-Org-Id', this.workspaceId);
87
+ if (workspaceId !== undefined) {
88
+ headers.set('X-Databricks-Org-Id', workspaceId);
89
89
  }
90
90
  headers.set('User-Agent', this.userAgent);
91
91
  const httpReq = buildHttpRequest('GET', fullUrl, headers, callSignal);
92
92
  const respBody = await executeHttpCall({
93
93
  request: httpReq,
94
- httpClient: this.httpClient,
94
+ httpClient,
95
95
  logger: this.logger,
96
96
  });
97
97
  resp = parseResponse(respBody, unmarshalGetPolicyComplianceForJobResponseSchema);
@@ -109,7 +109,8 @@ export class JobsClient {
109
109
  * clusters no longer comply with the updated policy.
110
110
  */
111
111
  async listJobComplianceForPolicy(req, options) {
112
- const url = `${this.host}/api/2.0/policies/jobs/list-compliance`;
112
+ const { host, workspaceId, httpClient } = await this.resolveConfig();
113
+ const url = `${host}/api/2.0/policies/jobs/list-compliance`;
113
114
  const params = new URLSearchParams();
114
115
  if (req.policyId !== undefined) {
115
116
  params.append('policy_id', req.policyId);
@@ -125,14 +126,14 @@ export class JobsClient {
125
126
  let resp;
126
127
  const call = async (callSignal) => {
127
128
  const headers = new Headers();
128
- if (this.workspaceId !== undefined) {
129
- headers.set('X-Databricks-Org-Id', this.workspaceId);
129
+ if (workspaceId !== undefined) {
130
+ headers.set('X-Databricks-Org-Id', workspaceId);
130
131
  }
131
132
  headers.set('User-Agent', this.userAgent);
132
133
  const httpReq = buildHttpRequest('GET', fullUrl, headers, callSignal);
133
134
  const respBody = await executeHttpCall({
134
135
  request: httpReq,
135
- httpClient: this.httpClient,
136
+ httpClient,
136
137
  logger: this.logger,
137
138
  });
138
139
  resp = parseResponse(respBody, unmarshalListJobComplianceResponseSchema);
@@ -161,19 +162,20 @@ export class JobsClient {
161
162
  * prevent new runs from being started.
162
163
  */
163
164
  async cancelAllRuns(req, options) {
164
- const url = `${this.host}/api/2.2/jobs/runs/cancel-all`;
165
+ const { host, workspaceId, httpClient } = await this.resolveConfig();
166
+ const url = `${host}/api/2.2/jobs/runs/cancel-all`;
165
167
  const body = marshalRequest(req, marshalCancelAllRunsRequestSchema);
166
168
  let resp;
167
169
  const call = async (callSignal) => {
168
170
  const headers = new Headers({ 'Content-Type': 'application/json' });
169
- if (this.workspaceId !== undefined) {
170
- headers.set('X-Databricks-Org-Id', this.workspaceId);
171
+ if (workspaceId !== undefined) {
172
+ headers.set('X-Databricks-Org-Id', workspaceId);
171
173
  }
172
174
  headers.set('User-Agent', this.userAgent);
173
175
  const httpReq = buildHttpRequest('POST', url, headers, callSignal, body);
174
176
  const respBody = await executeHttpCall({
175
177
  request: httpReq,
176
- httpClient: this.httpClient,
178
+ httpClient,
177
179
  logger: this.logger,
178
180
  });
179
181
  resp = parseResponse(respBody, unmarshalCancelAllRunsResponseSchema);
@@ -189,19 +191,20 @@ export class JobsClient {
189
191
  * this request completes.
190
192
  */
191
193
  async cancelRun(req, options) {
192
- const url = `${this.host}/api/2.2/jobs/runs/cancel`;
194
+ const { host, workspaceId, httpClient } = await this.resolveConfig();
195
+ const url = `${host}/api/2.2/jobs/runs/cancel`;
193
196
  const body = marshalRequest(req, marshalCancelRunRequestSchema);
194
197
  let resp;
195
198
  const call = async (callSignal) => {
196
199
  const headers = new Headers({ 'Content-Type': 'application/json' });
197
- if (this.workspaceId !== undefined) {
198
- headers.set('X-Databricks-Org-Id', this.workspaceId);
200
+ if (workspaceId !== undefined) {
201
+ headers.set('X-Databricks-Org-Id', workspaceId);
199
202
  }
200
203
  headers.set('User-Agent', this.userAgent);
201
204
  const httpReq = buildHttpRequest('POST', url, headers, callSignal, body);
202
205
  const respBody = await executeHttpCall({
203
206
  request: httpReq,
204
- httpClient: this.httpClient,
207
+ httpClient,
205
208
  logger: this.logger,
206
209
  });
207
210
  resp = parseResponse(respBody, unmarshalCancelRunResponseSchema);
@@ -221,19 +224,20 @@ export class JobsClient {
221
224
  }
222
225
  /** Create a new job. */
223
226
  async createJob(req, options) {
224
- const url = `${this.host}/api/2.2/jobs/create`;
227
+ const { host, workspaceId, httpClient } = await this.resolveConfig();
228
+ const url = `${host}/api/2.2/jobs/create`;
225
229
  const body = marshalRequest(req, marshalCreateJobRequestSchema);
226
230
  let resp;
227
231
  const call = async (callSignal) => {
228
232
  const headers = new Headers({ 'Content-Type': 'application/json' });
229
- if (this.workspaceId !== undefined) {
230
- headers.set('X-Databricks-Org-Id', this.workspaceId);
233
+ if (workspaceId !== undefined) {
234
+ headers.set('X-Databricks-Org-Id', workspaceId);
231
235
  }
232
236
  headers.set('User-Agent', this.userAgent);
233
237
  const httpReq = buildHttpRequest('POST', url, headers, callSignal, body);
234
238
  const respBody = await executeHttpCall({
235
239
  request: httpReq,
236
- httpClient: this.httpClient,
240
+ httpClient,
237
241
  logger: this.logger,
238
242
  });
239
243
  resp = parseResponse(respBody, unmarshalCreateJobResponseSchema);
@@ -246,19 +250,20 @@ export class JobsClient {
246
250
  }
247
251
  /** Deletes a job. */
248
252
  async deleteJob(req, options) {
249
- const url = `${this.host}/api/2.2/jobs/delete`;
253
+ const { host, workspaceId, httpClient } = await this.resolveConfig();
254
+ const url = `${host}/api/2.2/jobs/delete`;
250
255
  const body = marshalRequest(req, marshalDeleteJobRequestSchema);
251
256
  let resp;
252
257
  const call = async (callSignal) => {
253
258
  const headers = new Headers({ 'Content-Type': 'application/json' });
254
- if (this.workspaceId !== undefined) {
255
- headers.set('X-Databricks-Org-Id', this.workspaceId);
259
+ if (workspaceId !== undefined) {
260
+ headers.set('X-Databricks-Org-Id', workspaceId);
256
261
  }
257
262
  headers.set('User-Agent', this.userAgent);
258
263
  const httpReq = buildHttpRequest('POST', url, headers, callSignal, body);
259
264
  const respBody = await executeHttpCall({
260
265
  request: httpReq,
261
- httpClient: this.httpClient,
266
+ httpClient,
262
267
  logger: this.logger,
263
268
  });
264
269
  resp = parseResponse(respBody, unmarshalDeleteJobResponseSchema);
@@ -271,19 +276,20 @@ export class JobsClient {
271
276
  }
272
277
  /** Deletes a non-active run. Returns an error if the run is active. */
273
278
  async deleteRun(req, options) {
274
- const url = `${this.host}/api/2.2/jobs/runs/delete`;
279
+ const { host, workspaceId, httpClient } = await this.resolveConfig();
280
+ const url = `${host}/api/2.2/jobs/runs/delete`;
275
281
  const body = marshalRequest(req, marshalDeleteRunRequestSchema);
276
282
  let resp;
277
283
  const call = async (callSignal) => {
278
284
  const headers = new Headers({ 'Content-Type': 'application/json' });
279
- if (this.workspaceId !== undefined) {
280
- headers.set('X-Databricks-Org-Id', this.workspaceId);
285
+ if (workspaceId !== undefined) {
286
+ headers.set('X-Databricks-Org-Id', workspaceId);
281
287
  }
282
288
  headers.set('User-Agent', this.userAgent);
283
289
  const httpReq = buildHttpRequest('POST', url, headers, callSignal, body);
284
290
  const respBody = await executeHttpCall({
285
291
  request: httpReq,
286
- httpClient: this.httpClient,
292
+ httpClient,
287
293
  logger: this.logger,
288
294
  });
289
295
  resp = parseResponse(respBody, unmarshalDeleteRunResponseSchema);
@@ -296,7 +302,8 @@ export class JobsClient {
296
302
  }
297
303
  /** Export and retrieve the job run task. */
298
304
  async exportRun(req, options) {
299
- const url = `${this.host}/api/2.2/jobs/runs/export`;
305
+ const { host, workspaceId, httpClient } = await this.resolveConfig();
306
+ const url = `${host}/api/2.2/jobs/runs/export`;
300
307
  const params = new URLSearchParams();
301
308
  if (req.runId !== undefined) {
302
309
  params.append('run_id', String(req.runId));
@@ -309,14 +316,14 @@ export class JobsClient {
309
316
  let resp;
310
317
  const call = async (callSignal) => {
311
318
  const headers = new Headers();
312
- if (this.workspaceId !== undefined) {
313
- headers.set('X-Databricks-Org-Id', this.workspaceId);
319
+ if (workspaceId !== undefined) {
320
+ headers.set('X-Databricks-Org-Id', workspaceId);
314
321
  }
315
322
  headers.set('User-Agent', this.userAgent);
316
323
  const httpReq = buildHttpRequest('GET', fullUrl, headers, callSignal);
317
324
  const respBody = await executeHttpCall({
318
325
  request: httpReq,
319
- httpClient: this.httpClient,
326
+ httpClient,
320
327
  logger: this.logger,
321
328
  });
322
329
  resp = parseResponse(respBody, unmarshalExportRunResponseSchema);
@@ -336,7 +343,8 @@ export class JobsClient {
336
343
  * If any array properties have more than 100 elements, additional results will be returned on subsequent requests. Arrays without additional results will be empty on later pages.
337
344
  */
338
345
  async getJob(req, options) {
339
- const url = `${this.host}/api/2.2/jobs/get`;
346
+ const { host, workspaceId, httpClient } = await this.resolveConfig();
347
+ const url = `${host}/api/2.2/jobs/get`;
340
348
  const params = new URLSearchParams();
341
349
  if (req.jobId !== undefined) {
342
350
  params.append('job_id', String(req.jobId));
@@ -352,14 +360,14 @@ export class JobsClient {
352
360
  let resp;
353
361
  const call = async (callSignal) => {
354
362
  const headers = new Headers();
355
- if (this.workspaceId !== undefined) {
356
- headers.set('X-Databricks-Org-Id', this.workspaceId);
363
+ if (workspaceId !== undefined) {
364
+ headers.set('X-Databricks-Org-Id', workspaceId);
357
365
  }
358
366
  headers.set('User-Agent', this.userAgent);
359
367
  const httpReq = buildHttpRequest('GET', fullUrl, headers, callSignal);
360
368
  const respBody = await executeHttpCall({
361
369
  request: httpReq,
362
- httpClient: this.httpClient,
370
+ httpClient,
363
371
  logger: this.logger,
364
372
  });
365
373
  resp = parseResponse(respBody, unmarshalGetJobResponseSchema);
@@ -379,7 +387,8 @@ export class JobsClient {
379
387
  * If any array properties have more than 100 elements, additional results will be returned on subsequent requests. Arrays without additional results will be empty on later pages.
380
388
  */
381
389
  async getRun(req, options) {
382
- const url = `${this.host}/api/2.2/jobs/runs/get`;
390
+ const { host, workspaceId, httpClient } = await this.resolveConfig();
391
+ const url = `${host}/api/2.2/jobs/runs/get`;
383
392
  const params = new URLSearchParams();
384
393
  if (req.runId !== undefined) {
385
394
  params.append('run_id', String(req.runId));
@@ -398,14 +407,14 @@ export class JobsClient {
398
407
  let resp;
399
408
  const call = async (callSignal) => {
400
409
  const headers = new Headers();
401
- if (this.workspaceId !== undefined) {
402
- headers.set('X-Databricks-Org-Id', this.workspaceId);
410
+ if (workspaceId !== undefined) {
411
+ headers.set('X-Databricks-Org-Id', workspaceId);
403
412
  }
404
413
  headers.set('User-Agent', this.userAgent);
405
414
  const httpReq = buildHttpRequest('GET', fullUrl, headers, callSignal);
406
415
  const respBody = await executeHttpCall({
407
416
  request: httpReq,
408
- httpClient: this.httpClient,
417
+ httpClient,
409
418
  logger: this.logger,
410
419
  });
411
420
  resp = parseResponse(respBody, unmarshalGetRunResponseSchema);
@@ -428,7 +437,8 @@ export class JobsClient {
428
437
  * before they expire.
429
438
  */
430
439
  async getRunOutput(req, options) {
431
- const url = `${this.host}/api/2.2/jobs/runs/get-output`;
440
+ const { host, workspaceId, httpClient } = await this.resolveConfig();
441
+ const url = `${host}/api/2.2/jobs/runs/get-output`;
432
442
  const params = new URLSearchParams();
433
443
  if (req.runId !== undefined) {
434
444
  params.append('run_id', String(req.runId));
@@ -438,14 +448,14 @@ export class JobsClient {
438
448
  let resp;
439
449
  const call = async (callSignal) => {
440
450
  const headers = new Headers();
441
- if (this.workspaceId !== undefined) {
442
- headers.set('X-Databricks-Org-Id', this.workspaceId);
451
+ if (workspaceId !== undefined) {
452
+ headers.set('X-Databricks-Org-Id', workspaceId);
443
453
  }
444
454
  headers.set('User-Agent', this.userAgent);
445
455
  const httpReq = buildHttpRequest('GET', fullUrl, headers, callSignal);
446
456
  const respBody = await executeHttpCall({
447
457
  request: httpReq,
448
- httpClient: this.httpClient,
458
+ httpClient,
449
459
  logger: this.logger,
450
460
  });
451
461
  resp = parseResponse(respBody, unmarshalGetRunOutputResponseSchema);
@@ -458,7 +468,8 @@ export class JobsClient {
458
468
  }
459
469
  /** Retrieves a list of jobs. */
460
470
  async listJobs(req, options) {
461
- const url = `${this.host}/api/2.2/jobs/list`;
471
+ const { host, workspaceId, httpClient } = await this.resolveConfig();
472
+ const url = `${host}/api/2.2/jobs/list`;
462
473
  const params = new URLSearchParams();
463
474
  if (req.offset !== undefined) {
464
475
  params.append('offset', String(req.offset));
@@ -480,14 +491,14 @@ export class JobsClient {
480
491
  let resp;
481
492
  const call = async (callSignal) => {
482
493
  const headers = new Headers();
483
- if (this.workspaceId !== undefined) {
484
- headers.set('X-Databricks-Org-Id', this.workspaceId);
494
+ if (workspaceId !== undefined) {
495
+ headers.set('X-Databricks-Org-Id', workspaceId);
485
496
  }
486
497
  headers.set('User-Agent', this.userAgent);
487
498
  const httpReq = buildHttpRequest('GET', fullUrl, headers, callSignal);
488
499
  const respBody = await executeHttpCall({
489
500
  request: httpReq,
490
- httpClient: this.httpClient,
501
+ httpClient,
491
502
  logger: this.logger,
492
503
  });
493
504
  resp = parseResponse(respBody, unmarshalListJobsResponseSchema);
@@ -513,7 +524,8 @@ export class JobsClient {
513
524
  }
514
525
  /** List runs in descending order by start time. */
515
526
  async listRuns(req, options) {
516
- const url = `${this.host}/api/2.2/jobs/runs/list`;
527
+ const { host, workspaceId, httpClient } = await this.resolveConfig();
528
+ const url = `${host}/api/2.2/jobs/runs/list`;
517
529
  const params = new URLSearchParams();
518
530
  if (req.jobId !== undefined) {
519
531
  params.append('job_id', String(req.jobId));
@@ -550,14 +562,14 @@ export class JobsClient {
550
562
  let resp;
551
563
  const call = async (callSignal) => {
552
564
  const headers = new Headers();
553
- if (this.workspaceId !== undefined) {
554
- headers.set('X-Databricks-Org-Id', this.workspaceId);
565
+ if (workspaceId !== undefined) {
566
+ headers.set('X-Databricks-Org-Id', workspaceId);
555
567
  }
556
568
  headers.set('User-Agent', this.userAgent);
557
569
  const httpReq = buildHttpRequest('GET', fullUrl, headers, callSignal);
558
570
  const respBody = await executeHttpCall({
559
571
  request: httpReq,
560
- httpClient: this.httpClient,
572
+ httpClient,
561
573
  logger: this.logger,
562
574
  });
563
575
  resp = parseResponse(respBody, unmarshalListRunsResponseSchema);
@@ -587,19 +599,20 @@ export class JobsClient {
587
599
  * original job run.
588
600
  */
589
601
  async repair(req, options) {
590
- const url = `${this.host}/api/2.2/jobs/runs/repair`;
602
+ const { host, workspaceId, httpClient } = await this.resolveConfig();
603
+ const url = `${host}/api/2.2/jobs/runs/repair`;
591
604
  const body = marshalRequest(req, marshalRepairRunRequestSchema);
592
605
  let resp;
593
606
  const call = async (callSignal) => {
594
607
  const headers = new Headers({ 'Content-Type': 'application/json' });
595
- if (this.workspaceId !== undefined) {
596
- headers.set('X-Databricks-Org-Id', this.workspaceId);
608
+ if (workspaceId !== undefined) {
609
+ headers.set('X-Databricks-Org-Id', workspaceId);
597
610
  }
598
611
  headers.set('User-Agent', this.userAgent);
599
612
  const httpReq = buildHttpRequest('POST', url, headers, callSignal, body);
600
613
  const respBody = await executeHttpCall({
601
614
  request: httpReq,
602
- httpClient: this.httpClient,
615
+ httpClient,
603
616
  logger: this.logger,
604
617
  });
605
618
  resp = parseResponse(respBody, unmarshalRepairRunResponseSchema);
@@ -619,19 +632,20 @@ export class JobsClient {
619
632
  }
620
633
  /** Overwrite all settings for the given job. Use the [_Update_ endpoint](:method:jobs/update) to update job settings partially. */
621
634
  async resetJob(req, options) {
622
- const url = `${this.host}/api/2.2/jobs/reset`;
635
+ const { host, workspaceId, httpClient } = await this.resolveConfig();
636
+ const url = `${host}/api/2.2/jobs/reset`;
623
637
  const body = marshalRequest(req, marshalResetJobRequestSchema);
624
638
  let resp;
625
639
  const call = async (callSignal) => {
626
640
  const headers = new Headers({ 'Content-Type': 'application/json' });
627
- if (this.workspaceId !== undefined) {
628
- headers.set('X-Databricks-Org-Id', this.workspaceId);
641
+ if (workspaceId !== undefined) {
642
+ headers.set('X-Databricks-Org-Id', workspaceId);
629
643
  }
630
644
  headers.set('User-Agent', this.userAgent);
631
645
  const httpReq = buildHttpRequest('POST', url, headers, callSignal, body);
632
646
  const respBody = await executeHttpCall({
633
647
  request: httpReq,
634
- httpClient: this.httpClient,
648
+ httpClient,
635
649
  logger: this.logger,
636
650
  });
637
651
  resp = parseResponse(respBody, unmarshalResetJobResponseSchema);
@@ -644,19 +658,20 @@ export class JobsClient {
644
658
  }
645
659
  /** Run a job and return the `run_id` of the triggered run. */
646
660
  async runNow(req, options) {
647
- const url = `${this.host}/api/2.2/jobs/run-now`;
661
+ const { host, workspaceId, httpClient } = await this.resolveConfig();
662
+ const url = `${host}/api/2.2/jobs/run-now`;
648
663
  const body = marshalRequest(req, marshalRunNowRequestSchema);
649
664
  let resp;
650
665
  const call = async (callSignal) => {
651
666
  const headers = new Headers({ 'Content-Type': 'application/json' });
652
- if (this.workspaceId !== undefined) {
653
- headers.set('X-Databricks-Org-Id', this.workspaceId);
667
+ if (workspaceId !== undefined) {
668
+ headers.set('X-Databricks-Org-Id', workspaceId);
654
669
  }
655
670
  headers.set('User-Agent', this.userAgent);
656
671
  const httpReq = buildHttpRequest('POST', url, headers, callSignal, body);
657
672
  const respBody = await executeHttpCall({
658
673
  request: httpReq,
659
- httpClient: this.httpClient,
674
+ httpClient,
660
675
  logger: this.logger,
661
676
  });
662
677
  resp = parseResponse(respBody, unmarshalRunNowResponseSchema);
@@ -688,19 +703,20 @@ export class JobsClient {
688
703
  * `POST /jobs/run-now` endpoints to create and run a saved job.
689
704
  */
690
705
  async submitRun(req, options) {
691
- const url = `${this.host}/api/2.2/jobs/runs/submit`;
706
+ const { host, workspaceId, httpClient } = await this.resolveConfig();
707
+ const url = `${host}/api/2.2/jobs/runs/submit`;
692
708
  const body = marshalRequest(req, marshalSubmitRunRequestSchema);
693
709
  let resp;
694
710
  const call = async (callSignal) => {
695
711
  const headers = new Headers({ 'Content-Type': 'application/json' });
696
- if (this.workspaceId !== undefined) {
697
- headers.set('X-Databricks-Org-Id', this.workspaceId);
712
+ if (workspaceId !== undefined) {
713
+ headers.set('X-Databricks-Org-Id', workspaceId);
698
714
  }
699
715
  headers.set('User-Agent', this.userAgent);
700
716
  const httpReq = buildHttpRequest('POST', url, headers, callSignal, body);
701
717
  const respBody = await executeHttpCall({
702
718
  request: httpReq,
703
- httpClient: this.httpClient,
719
+ httpClient,
704
720
  logger: this.logger,
705
721
  });
706
722
  resp = parseResponse(respBody, unmarshalSubmitRunResponseSchema);
@@ -720,19 +736,20 @@ export class JobsClient {
720
736
  }
721
737
  /** Add, update, or remove specific settings of an existing job. Use the [_Reset_ endpoint](:method:jobs/reset) to overwrite all job settings. */
722
738
  async updateJob(req, options) {
723
- const url = `${this.host}/api/2.2/jobs/update`;
739
+ const { host, workspaceId, httpClient } = await this.resolveConfig();
740
+ const url = `${host}/api/2.2/jobs/update`;
724
741
  const body = marshalRequest(req, marshalUpdateJobRequestSchema);
725
742
  let resp;
726
743
  const call = async (callSignal) => {
727
744
  const headers = new Headers({ 'Content-Type': 'application/json' });
728
- if (this.workspaceId !== undefined) {
729
- headers.set('X-Databricks-Org-Id', this.workspaceId);
745
+ if (workspaceId !== undefined) {
746
+ headers.set('X-Databricks-Org-Id', workspaceId);
730
747
  }
731
748
  headers.set('User-Agent', this.userAgent);
732
749
  const httpReq = buildHttpRequest('POST', url, headers, callSignal, body);
733
750
  const respBody = await executeHttpCall({
734
751
  request: httpReq,
735
- httpClient: this.httpClient,
752
+ httpClient,
736
753
  logger: this.logger,
737
754
  });
738
755
  resp = parseResponse(respBody, unmarshalUpdateJobResponseSchema);