diff --git a/api/openapi.yaml b/api/openapi.yaml index 1b02e86c..eb89d2c0 100644 --- a/api/openapi.yaml +++ b/api/openapi.yaml @@ -1,8 +1,8 @@ openapi: 3.0.0 info: - title: Jupyter Scheduler API + title: Jupyter Workflow API version: 2.7.1 - description: API for Jupyter Scheduler, a JupyterLab extension for running notebook jobs. + description: API for Jupyter Workdflow, a JupyterLab extension for running notebook jobs. servers: - url: /scheduler security: @@ -11,17 +11,63 @@ security: paths: /jobs: get: - summary: List all jobs + summary: List jobs + operationId: listJobs parameters: - - name: job_definition_id - in: query + - in: query + name: limit + schema: + type: integer + - in: query + name: offset + schema: + type: integer + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/DSListJobsResponse' + '500': + description: Server error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + + /jobs/{job_id}: + get: + summary: Get details of a specific job + parameters: + - name: job_id + in: path + required: true schema: type: string - required: false - - name: status + responses: + '200': + description: Successfully retrieved job details. + content: + application/json: + schema: + $ref: '#/components/schemas/DSDescribeJob' + '500': + description: Server error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + + /job_definitions: + get: + summary: List all job definitions + operationId: listJobDefinitions + parameters: + - name: job_definition_id in: query schema: - $ref: '#/components/schemas/Status' + type: string required: false - name: name in: query @@ -35,7 +81,7 @@ paths: items: type: string required: false - - name: start_time + - name: create_time in: query schema: type: integer @@ -61,35 +107,36 @@ paths: required: false responses: '200': - description: Successfully retrieved the list of jobs. + description: Successfully retrieved the list of job definitions. content: application/json: schema: - $ref: '#/components/schemas/ListJobsResponse' + $ref: '#/components/schemas/DSListJobDefinitionsResponse' '500': description: Server error content: application/json: schema: $ref: '#/components/schemas/Error' + post: - summary: Create a new job + summary: Create a new job definition requestBody: - description: Payload to create a new job + description: Payload to create a new job definition required: true content: application/json: schema: - $ref: '#/components/schemas/CreateJob' + $ref: '#/components/schemas/DSCreateJobDefinition' responses: '200': - description: Successfully created the job. + description: Successfully created the job definition. content: application/json: schema: type: object properties: - job_id: + job_definition_id: type: string '500': description: Server error @@ -98,63 +145,69 @@ paths: schema: $ref: '#/components/schemas/Error' - /jobs/{job_id}: + /job_definitions/{job_definition_id}: get: - summary: Get details of a specific job + summary: Get details of a specific job definition parameters: - - name: job_id + - name: job_definition_id in: path required: true schema: type: string responses: '200': - description: Successfully retrieved job details. + description: Successfully retrieved job definition details. content: application/json: schema: - $ref: '#/components/schemas/DescribeJob' + $ref: '#/components/schemas/DSDescribeJobDefinition' '500': description: Server error content: application/json: schema: $ref: '#/components/schemas/Error' + patch: - summary: Update a specific job + summary: Update a specific job definition parameters: - - name: job_id + - name: job_definition_id in: path required: true schema: type: string requestBody: - description: Data for updating the job + description: Data for updating the job definition required: true content: application/json: schema: - $ref: '#/components/schemas/UpdateJob' + $ref: '#/components/schemas/DSUpdateJobDefinition' responses: '204': - description: Successfully updated the job. + description: Job definition updated successfully + content: + application/json: + schema: + $ref: '#/components/schemas/DSDescribeJobDefinition' '500': description: Server error content: application/json: schema: $ref: '#/components/schemas/Error' + delete: - summary: Delete a specific job + summary: Delete a specific job definition parameters: - - name: job_id + - name: job_definition_id in: path required: true schema: type: string responses: '204': - description: Successfully deleted the job. + description: Successfully deleted the job definition. '500': description: Server error content: @@ -162,58 +215,32 @@ paths: schema: $ref: '#/components/schemas/Error' - /job_definitions: - get: - summary: List all job definitions + /job_definitions/{job_definition_id}/jobs: + post: + summary: Create a job from a job definition parameters: - name: job_definition_id - in: query - schema: - type: string - required: false - - name: name - in: query - schema: - type: string - required: false - - name: tags - in: query - schema: - type: array - items: - type: string - required: false - - name: create_time - in: query - schema: - type: integer - required: false - - name: sort_by - in: query - schema: - type: array - items: - $ref: '#/components/schemas/SortField' - description: Specifies the sorting criteria, defaults to 'create_time' in descending order if not provided - required: false - - name: max_items - in: query - schema: - type: integer - default: 1000 - required: false - - name: next_token - in: query + in: path + required: true schema: type: string - required: false + requestBody: + description: Parameters needed to create a job from this job definition + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/CreateJobFromDefinition' responses: '200': - description: Successfully retrieved the list of job definitions. + description: Successfully created the job from the job definition. content: application/json: schema: - $ref: '#/components/schemas/ListJobDefinitionsResponse' + type: object + properties: + job_id: + type: string '500': description: Server error content: @@ -221,15 +248,16 @@ paths: schema: $ref: '#/components/schemas/Error' + /v2/job_definitions/: post: - summary: Create a new job definition + summary: Create a new V2 job definition requestBody: - description: Payload to create a new job definition + description: Payload to create a new V2 job definition required: true content: application/json: schema: - $ref: '#/components/schemas/CreateJobDefinition' + $ref: '#/components/schemas/DSCreateJobDefinition' responses: '200': description: Successfully created the job definition. @@ -247,7 +275,8 @@ paths: schema: $ref: '#/components/schemas/Error' - /job_definitions/{job_definition_id}: + + /v2/job_definitions/{job_definition_id}: get: summary: Get details of a specific job definition parameters: @@ -262,14 +291,13 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/DescribeJobDefinition' + $ref: '#/components/schemas/DSDescribeJobDefinition' '500': description: Server error content: application/json: schema: $ref: '#/components/schemas/Error' - patch: summary: Update a specific job definition parameters: @@ -284,17 +312,20 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/UpdateJobDefinition' + $ref: '#/components/schemas/DSUpdateJobDefinition' responses: '204': - description: Successfully updated the job definition. + description: Job definition updated successfully + content: + application/json: + schema: + $ref: '#/components/schemas/DSDescribeJobDefinition' '500': description: Server error content: application/json: schema: $ref: '#/components/schemas/Error' - delete: summary: Delete a specific job definition parameters: @@ -311,122 +342,305 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Error' - /job_definitions/{job_definition_id}/jobs: + /v2/job_definitions/{job_definition_id}/deploy: post: - summary: Create a job from a job definition + summary: Deploy a specific job definition + parameters: + - name: job_definition_id + in: path + required: true + schema: + type: string + responses: + '204': + description: Successfully deployed the job definition. + '500': + description: Server error + + /v2/job_definitions/{job_definition_id}/tasks: + get: + summary: Get list of tasks + responses: + '200': + description: Successful response + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/DSTask' + post: + summary: Create a new task + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/DSTask' + responses: + '201': + description: Task created + + /v2/job_definitions/{job_definition_id}/tasks/{task_id}: + patch: + summary: Update a specific task in a job definition parameters: - name: job_definition_id in: path required: true schema: type: string + - name: task_id + in: path + required: true + schema: + type: string requestBody: - description: Parameters needed to create a job from this job definition + description: Data for updating the task required: true content: application/json: schema: - $ref: '#/components/schemas/CreateJobFromDefinition' + $ref: '#/components/schemas/DSTask' responses: '200': - description: Successfully created the job from the job definition. + description: Job definition updated successfully content: application/json: schema: - type: object - properties: - job_id: - type: string + $ref: '#/components/schemas/DSDescribeJobDefinition' '500': description: Server error content: application/json: schema: - $ref: '#/components/schemas/Error' - - - /jobs/{job_id}/download_files: - get: - summary: Download job files + $ref: '#/components/schemas/Error' + delete: + summary: Delete a specific task from job definition parameters: - - name: job_id + - name: job_definition_id in: path required: true schema: type: string - - name: redownload - in: query + - name: task_id + in: path + required: true schema: - type: boolean - default: false + type: string responses: '204': - description: Files successfully downloaded or copied. + description: Successfully deleted the task from job definition. '500': - description: Error downloading files + description: Server error content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Error' - /jobs/count: + /v2/scheduler/jobs: get: - summary: Count jobs based on status + summary: List V2 jobs + operationId: lv2 istJobs parameters: - - name: status - in: query + - in: query + name: limit schema: - $ref: '#/components/schemas/Status' + type: integer + - in: query + name: offset + schema: + type: integer responses: '200': - description: Successfully counted jobs. + description: Successful response content: application/json: schema: - type: object - properties: - count: - type: integer + $ref: '#/components/schemas/DSListJobsResponse' '500': description: Server error content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Error' + + /v2/scheduler/jobs/{job_id}: + post: + summary: Manual Run a specific job + parameters: + - name: job_id + in: path + required: true + schema: + type: string + responses: + '200': + description: Successfully ran the job. + '500': + description: Server error - /runtime_environments: get: - summary: List available runtime environments + summary: Get details of a specific job + parameters: + - name: job_id + in: path + required: true + schema: + type: string responses: '200': - description: Successfully listed runtime environments. + description: Successfully retrieved job details. content: application/json: schema: - type: array - items: - $ref: '#/components/schemas/RuntimeEnvironment' + $ref: '#/components/schemas/DSDescribeJob' '500': description: Server error content: application/json: schema: - $ref: '#/components/schemas/Error' + $ref: '#/components/schemas/Error' - /config: + /v2/scheduler/jobs/{job_id}/task_runs/{task_id}/download_files: get: - summary: Get configuration details - responses: - '200': - description: Successfully retrieved configuration details. - content: - application/json: - schema: - type: object - properties: - supported_features: + summary: Download job files + parameters: + - name: job_id + in: path + required: true + schema: + type: string + - name: redownload + in: query + schema: + type: boolean + default: false + responses: + '204': + description: Files successfully downloaded or copied. + '500': + description: Error downloading files + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + + /v2/scheduler/job_definitions/{job_definition_id}/jobs: + post: + summary: Create a job from a job definition + parameters: + - name: job_definition_id + in: path + required: true + schema: + type: string + requestBody: + description: Parameters needed to create a job from this job definition + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/CreateJobFromDefinition' + responses: + '200': + description: Successfully created the job from the job definition. + content: + application/json: + schema: + type: object + properties: + job_id: + type: string + '500': + description: Server error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + + /jobs/{job_id}/download_files: + get: + summary: Download job files + parameters: + - name: job_id + in: path + required: true + schema: + type: string + - name: redownload + in: query + schema: + type: boolean + default: false + responses: + '204': + description: Files successfully downloaded or copied. + '500': + description: Error downloading files + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + + /jobs/count: + get: + summary: Count jobs based on status + parameters: + - name: status + in: query + schema: + $ref: '#/components/schemas/Status' + responses: + '200': + description: Successfully counted jobs. + content: + application/json: + schema: + type: object + properties: + count: + type: integer + '500': + description: Server error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + + /runtime_environments: + get: + summary: List available runtime environments + responses: + '200': + description: Successfully listed runtime environments. + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/RuntimeEnvironment' + '500': + description: Server error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + + /config: + get: + summary: Get configuration details + responses: + '200': + description: Successfully retrieved configuration details. + content: + application/json: + schema: + type: object + properties: + supported_features: type: array items: type: string @@ -459,6 +673,143 @@ paths: schema: $ref: '#/components/schemas/Error' + /files: + get: + summary: Get list of files + responses: + '200': + description: Successful response + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/DSFile' + post: + summary: Create a new file + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/DSFile' + responses: + '201': + description: File created + + /files/{fileId}: + get: + summary: Get a file by ID + parameters: + - name: fileId + in: path + required: true + schema: + type: string + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/DSFile' + put: + summary: Update a file by ID + parameters: + - name: fileId + in: path + required: true + schema: + type: string + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/DSFile' + responses: + '200': + description: File updated + delete: + summary: Delete a file by ID + parameters: + - name: fileId + in: path + required: true + schema: + type: string + responses: + '204': + description: File deleted + + /namespaces: + get: + summary: Get list of namespaces + responses: + '200': + description: Successful response + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/DSNamespace' + post: + summary: Create a new namespace + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/DSNamespace' + responses: + '201': + description: Namespace created + + /namespaces/{namespaceId}: + get: + summary: Get a namespace by ID + parameters: + - name: namespaceId + in: path + required: true + schema: + type: string + responses: + '200': + description: Successful response + content: + application/json: + schema: + $ref: '#/components/schemas/DSNamespace' + put: + summary: Update a namespace by ID + parameters: + - name: namespaceId + in: path + required: true + schema: + type: string + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/DSNamespace' + responses: + '200': + description: Namespace updated + delete: + summary: Delete a namespace by ID + parameters: + - name: namespaceId + in: path + required: true + schema: + type: string + responses: + '204': + description: Namespace deleted components: securitySchemes: JupyterServerAuthHeader: @@ -489,7 +840,7 @@ components: direction: type: string enum: [asc, desc] - DescribeJob: + DSDescribeJob: type: object properties: job_id: @@ -498,13 +849,230 @@ components: type: string runtime_environment_name: type: string + runtimeProperties: + type: object + additionalProperties: + type: string + runtime_environment_parameters: + type: object + additionalProperties: + type: string + idempotency_token: + type: string + job_definition_id: + type: string + parameters: + type: object + additionalProperties: + type: string + tags: + type: array + items: + type: string + name: + type: string + output_filename_template: + type: string + compute_type: + type: string + job_id: + type: string + job_files: + type: array + items: + $ref: '#/components/schemas/JobFile' + url: + type: string + create_time: + type: integer + update_time: + type: integer + start_time: + type: integer + end_time: + type: integer + status: + $ref: '#/components/schemas/Status' + status_message: + type: string + downloaded: + type: boolean + notificationEvents: + type: array + items: + type: string + notificationEmails: + type: array + items: + type: string + externalLinks: + type: array + items: + type: string + input_file_id: + type: string + output_file_id: + type: string + outputPreviewLink: + type: string + output_formats: + type: array + items: + type: string + slackChannel: + type: string + scheduleStartDate: + type: string + taskTimeout: + type: string + showOutputInEmail: + type: boolean + task_runs: + type: array + items: + $ref: '#/components/schemas/DSDescribeJobTask' + tasks: + type: array + items: + $ref: '#/components/schemas/DSDesribeJobfinitionTask' + runId: + type: string + DSDescribeJobTask: + type: object + properties: + job_id: + type: string + input_filename: + type: string + runtime_environment_name: + type: string + runtimeProperties: + type: object + additionalProperties: + type: string + runtime_environment_parameters: + type: object + additionalProperties: + type: string + idempotency_token: + type: string + job_definition_id: + type: string + parameters: + type: object + additionalProperties: + type: string + tags: + type: array + items: + type: string + name: + type: string + output_filename_template: + type: string + compute_type: + type: string + job_id: + type: string + job_files: + type: array + items: + $ref: '#/components/schemas/JobFile' + url: + type: string + create_time: + type: integer + update_time: + type: integer + start_time: + type: integer + end_time: + type: integer + status: + $ref: '#/components/schemas/Status' + status_message: + type: string + downloaded: + type: boolean + notificationEvents: + type: array + items: + type: string + notificationEmails: + type: array + items: + type: string + externalLinks: + type: array + items: + type: string + input_file_id: + type: string + output_file_id: + type: string + outputPreviewLink: + type: string + output_formats: + type: array + items: + type: string + slackChannel: + type: string + scheduleStartDate: + type: string + taskTimeout: + type: string + showOutputInEmail: + type: boolean + task_runs: + type: array + items: + $ref: '#/components/schemas/DSDescribeJobTask' + tasks: + type: array + items: + $ref: '#/components/schemas/DSDesribeJobfinitionTask' + runId: + type: string + run_count: + type: integer + taskId: + type: string + dependsOn: + type: array + items: + type: string + DSListJobsResponse: + type: object + properties: + jobs: + type: array + items: + $ref: '#/components/schemas/DSDescribeJob' + total_count: + type: integer + next_token: + type: string + DSCreateJobDefinition: + type: object + properties: + input_uri: + type: string + input_filename: + type: string + runtime_environment_name: + type: string runtime_environment_parameters: - type: object + type: object additionalProperties: type: string output_formats: - type: array + type: array items: + type: string + runtimeProperties: + type: object + additionalProperties: type: string parameters: type: object @@ -520,172 +1088,147 @@ components: type: string compute_type: type: string - job_files: - type: array - items: - $ref: '#/components/schemas/JobFile' - create_time: - type: integer - update_time: - type: integer - start_time: - type: integer - end_time: - type: integer - status: - $ref: '#/components/schemas/Status' - status_message: - type: string - downloaded: - type: boolean - package_input_folder: - type: boolean - packaged_files: - type: array - items: - type: string - ListJobsResponse: - type: object - properties: - jobs: - type: array - items: - $ref: '#/components/schemas/DescribeJob' - total_count: - type: integer - next_token: - type: string - CreateJob: - type: object - properties: - input_uri: + schedule: type: string - input_filename: + timezone: type: string - runtime_environment_name: + kernelSpecId: type: string - runtime_environment_parameters: - type: object - additionalProperties: + namespaceId: type: string - output_formats: + notificationEvents: type: array items: type: string - parameters: - type: object - tags: + notificationEmails: type: array items: type: string - name: + slackChannel: type: string - output_filename_template: + scheduleStartDate: type: string - compute_type: + taskTimeout: type: string - package_input_folder: + showOutputInEmail: type: boolean - UpdateJob: + tasks: + type: array + items: + $ref: '#/components/schemas/DSTask' + notebookParameters: + type: object + additionalProperties: + type: string + DSDescribeJobDefinition: type: object properties: - status: - $ref: '#/components/schemas/Status' + input_filename: + type: string + id: + type: string name: type: string - compute_type: + kernelSpecId: type: string - DescribeJobDefinition: - type: object - properties: - job_definition_id: + namespaceId: type: string - input_filename: + kernelSpecVersion: type: string - runtime_environment_name: + kernelProfileId: + type: string + kernelProfileVersion: type: string - runtime_environment_parameters: + namespaceId: + type: string + runtimeProperties: type: object additionalProperties: type: string - output_formats: + notificationEvents: type: array items: type: string - parameters: + notificationEmails: + type: array + items: + type: string + notebookParameters: type: object additionalProperties: type: string - tags: + slackChannel: + type: string + scheduleStartDate: + type: string + taskTimeout: + type: string + showOutputInEmail: + type: boolean + output_formats: type: array items: type: string - name: - type: string - output_filename_template: - type: string - active: - type: boolean - create_time: - type: integer - update_time: - type: integer - ListJobDefinitionsResponse: - type: object - properties: - job_definitions: + inputFiles: type: array items: - $ref: '#/components/schemas/DescribeJobDefinition' - total_count: - type: integer - next_token: - type: string - CreateJobDefinition: - type: object - properties: - input_uri: - type: string - input_filename: + $ref: '#/components/schemas/DSFile' + taskTimeout: type: string runtime_environment_name: type: string runtime_environment_parameters: - type: object + type: object additionalProperties: type: string - output_formats: + input_file_id: + type: string + active: + type: boolean + status: + type: string + statusMessage: + type: string + input_file_path: + type: string + externalLinks: type: array items: - type: string + type: string + timezone: + type: string + job_definition_id: + type: string parameters: type: object additionalProperties: type: string + version: + type: string + deploy_time: + type: integer + create_time: + type: integer + update_time: + type: integer + tasks: + type: array + items: + $ref: '#/components/schemas/DSDesribeJobfinitionTask' tags: type: array items: type: string - name: - type: string - output_filename_template: - type: string - active: - type: boolean schedule: type: string timezone: type: string - compute_type: - type: string - package_input_folder: - type: boolean - UpdateJobDefinition: + DSUpdateJobDefinition: type: object properties: runtime_environment_name: type: string - runtime_environment_parameters: + runtimeProperties: type: object additionalProperties: type: string @@ -717,32 +1260,182 @@ components: type: string input_uri: type: string - CreateJobFromDefinition: + kernelSpecId: + type: string + notificationEvents: + type: array + items: + type: string + notificationEmails: + type: array + items: + type: string + input_file_id: + type: string + slackChannel: + type: string + scheduleStartDate: + type: string + taskTimeout: + type: string + showOutputInEmail: + type: boolean + tasks: + type: array + items: + $ref: '#/components/schemas/DSTask' + DSDescribeJob: type: object properties: - parameters: + job_id: + type: string + name: + type: string + status: + type: string + create_time: + type: integer + update_time: + type: integer + start_time: + type: integer + end_time: + type: integer + task_runs: + type: array + items: + $ref: '#/components/schemas/DSDescribeJobTask' + DSListJobsResponse: + type: object + properties: + jobs: + type: array + items: + $ref: '#/components/schemas/DSDescribeJob' + total_count: + type: integer + next_token: + type: string + DSListJobDefinitionsResponse: + type: object + properties: + job_definitions: + type: array + items: + $ref: '#/components/schemas/DSDescribeJobDefinition' + total_count: + type: integer + next_token: + type: string + DSTask: + type: object + properties: + id: + type: string + nodeId: + type: string + name: + type: string + kernelSpecId: + type: string + kernelSpecVersion: + type: string + kernelProfileId: + type: string + kernelProfileVersion: + type: string + namespaceId: + type: string + runtimeProperties: type: object additionalProperties: type: string - JobFile: - type: object - properties: - display_name: + notebookParameters: + type: object + additionalProperties: + type: string + outputFormats: + type: array + items: + type: string + inputFiles: + type: array + items: + $ref: '#/components/schemas/DSFile' + taskTimeout: + type: string + showOutputInEmail: + type: boolean + slackChannel: + type: string + input_uri: + type: string + input_filename: + type: string + triggerRule: + type: string + dependsOn: + type: array + items: + type: string + createdAt: + type: string + lastModifiedAt: type: string - file_format: + status: + type: string + statusMessage: type: string - file_path: + input_file_id: type: string - RuntimeEnvironment: + DSDesribeJobfinitionTask: type: object properties: + id: + type: string + nodeId: + type: string name: type: string - label: + kernelSpecId: + type: string + namespaceId: + type: string + kernelSpecVersion: + type: string + kernelProfileId: + type: string + kernelProfileVersion: + type: string + status: + type: string + status_message: + type: string + create_time: + type: string + update_time: + type: string + runtimeProperties: + type: object + additionalProperties: + type: string + inputFiles: + type: array + items: + $ref: '#/components/schemas/DSFile' + taskTimeout: + type: string + showOutputInEmail: + type: boolean + slackChannel: + type: string + input_uri: + type: string + input_filename: type: string - description: + triggerRule: type: string - file_extensions: + dependsOn: type: array items: type: string @@ -750,15 +1443,32 @@ components: type: array items: type: string - metadata: + parameters: type: object additionalProperties: type: string - compute_types: - type: array - items: + create_time: + type: string + update_time: + type: string + status: + type: string + statusMessage: + type: string + input_file_id: + type: string + notebookParameters: + type: object + additionalProperties: type: string - default_compute_type: + notificationEmails: + type: object + additionalProperties: + type: string + DSFile: + type: object + properties: + id: + type: string + name: type: string - utc_only: - type: boolean