1859 lines
55 KiB
JSON
1859 lines
55 KiB
JSON
{
|
|
"swagger": "2.0",
|
|
"info": {
|
|
"title": "Kubeflow Pipelines API",
|
|
"version": "0.1.38",
|
|
"description": "This file contains REST API specification for Kubeflow Pipelines. The file is autogenerated from the swagger definition."
|
|
},
|
|
"schemes": [
|
|
"http",
|
|
"https"
|
|
],
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"paths": {
|
|
"/apis/v1beta1/runs": {
|
|
"get": {
|
|
"summary": "Find all runs.",
|
|
"operationId": "ListRuns",
|
|
"responses": {
|
|
"200": {
|
|
"description": "A successful response.",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiListRunsResponse"
|
|
}
|
|
},
|
|
"default": {
|
|
"description": "",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiStatus"
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "page_token",
|
|
"in": "query",
|
|
"required": false,
|
|
"type": "string"
|
|
},
|
|
{
|
|
"name": "page_size",
|
|
"in": "query",
|
|
"required": false,
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
{
|
|
"name": "sort_by",
|
|
"description": "Can be format of \"field_name\", \"field_name asc\" or \"field_name des\"\n(Example, \"name asc\" or \"id des\"). Ascending by default.",
|
|
"in": "query",
|
|
"required": false,
|
|
"type": "string"
|
|
},
|
|
{
|
|
"name": "resource_reference_key.type",
|
|
"description": "The type of the resource that referred to.",
|
|
"in": "query",
|
|
"required": false,
|
|
"type": "string",
|
|
"enum": [
|
|
"UNKNOWN_RESOURCE_TYPE",
|
|
"EXPERIMENT",
|
|
"JOB",
|
|
"PIPELINE",
|
|
"PIPELINE_VERSION",
|
|
"NAMESPACE"
|
|
],
|
|
"default": "UNKNOWN_RESOURCE_TYPE"
|
|
},
|
|
{
|
|
"name": "resource_reference_key.id",
|
|
"description": "The ID of the resource that referred to.",
|
|
"in": "query",
|
|
"required": false,
|
|
"type": "string"
|
|
},
|
|
{
|
|
"name": "filter",
|
|
"description": "A url-encoded, JSON-serialized Filter protocol buffer (see\n[filter.proto](https://github.com/kubeflow/pipelines/\nblob/master/backend/api/filter.proto)).",
|
|
"in": "query",
|
|
"required": false,
|
|
"type": "string"
|
|
}
|
|
],
|
|
"tags": [
|
|
"RunService"
|
|
]
|
|
},
|
|
"post": {
|
|
"summary": "Create a new run.",
|
|
"operationId": "CreateRun",
|
|
"responses": {
|
|
"200": {
|
|
"description": "A successful response.",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiRunDetail"
|
|
}
|
|
},
|
|
"default": {
|
|
"description": "",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiStatus"
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "body",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/apiRun"
|
|
}
|
|
}
|
|
],
|
|
"tags": [
|
|
"RunService"
|
|
]
|
|
}
|
|
},
|
|
"/apis/v1beta1/runs/{id}": {
|
|
"delete": {
|
|
"summary": "Delete a run.",
|
|
"operationId": "DeleteRun",
|
|
"responses": {
|
|
"200": {
|
|
"description": "A successful response.",
|
|
"schema": {
|
|
"properties": {}
|
|
}
|
|
},
|
|
"default": {
|
|
"description": "",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiStatus"
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"type": "string"
|
|
}
|
|
],
|
|
"tags": [
|
|
"RunService"
|
|
]
|
|
}
|
|
},
|
|
"/apis/v1beta1/runs/{id}:archive": {
|
|
"post": {
|
|
"summary": "Archive a run.",
|
|
"operationId": "ArchiveRun",
|
|
"responses": {
|
|
"200": {
|
|
"description": "A successful response.",
|
|
"schema": {
|
|
"properties": {}
|
|
}
|
|
},
|
|
"default": {
|
|
"description": "",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiStatus"
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"type": "string"
|
|
}
|
|
],
|
|
"tags": [
|
|
"RunService"
|
|
]
|
|
}
|
|
},
|
|
"/apis/v1beta1/runs/{id}:unarchive": {
|
|
"post": {
|
|
"summary": "Restore an archived run.",
|
|
"operationId": "UnarchiveRun",
|
|
"responses": {
|
|
"200": {
|
|
"description": "A successful response.",
|
|
"schema": {
|
|
"properties": {}
|
|
}
|
|
},
|
|
"default": {
|
|
"description": "",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiStatus"
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"type": "string"
|
|
}
|
|
],
|
|
"tags": [
|
|
"RunService"
|
|
]
|
|
}
|
|
},
|
|
"/apis/v1beta1/runs/{run_id}": {
|
|
"get": {
|
|
"summary": "Find a specific run by ID.",
|
|
"operationId": "GetRun",
|
|
"responses": {
|
|
"200": {
|
|
"description": "A successful response.",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiRunDetail"
|
|
}
|
|
},
|
|
"default": {
|
|
"description": "",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiStatus"
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "run_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"type": "string"
|
|
}
|
|
],
|
|
"tags": [
|
|
"RunService"
|
|
]
|
|
}
|
|
},
|
|
"/apis/v1beta1/runs/{run_id}/nodes/{node_id}/artifacts/{artifact_name}:read": {
|
|
"get": {
|
|
"summary": "Find a run's artifact data.",
|
|
"operationId": "ReadArtifact",
|
|
"responses": {
|
|
"200": {
|
|
"description": "A successful response.",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiReadArtifactResponse"
|
|
}
|
|
},
|
|
"default": {
|
|
"description": "",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiStatus"
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "run_id",
|
|
"description": "The ID of the run.",
|
|
"in": "path",
|
|
"required": true,
|
|
"type": "string"
|
|
},
|
|
{
|
|
"name": "node_id",
|
|
"description": "The ID of the running node.",
|
|
"in": "path",
|
|
"required": true,
|
|
"type": "string"
|
|
},
|
|
{
|
|
"name": "artifact_name",
|
|
"description": "The name of the artifact.",
|
|
"in": "path",
|
|
"required": true,
|
|
"type": "string"
|
|
}
|
|
],
|
|
"tags": [
|
|
"RunService"
|
|
]
|
|
}
|
|
},
|
|
"/apis/v1beta1/runs/{run_id}/retry": {
|
|
"post": {
|
|
"summary": "Re-initiate a failed or terminated run.",
|
|
"operationId": "RetryRun",
|
|
"responses": {
|
|
"200": {
|
|
"description": "A successful response.",
|
|
"schema": {
|
|
"properties": {}
|
|
}
|
|
},
|
|
"default": {
|
|
"description": "",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiStatus"
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "run_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"type": "string"
|
|
}
|
|
],
|
|
"tags": [
|
|
"RunService"
|
|
]
|
|
}
|
|
},
|
|
"/apis/v1beta1/runs/{run_id}/terminate": {
|
|
"post": {
|
|
"summary": "Terminate an active run.",
|
|
"operationId": "TerminateRun",
|
|
"responses": {
|
|
"200": {
|
|
"description": "A successful response.",
|
|
"schema": {
|
|
"properties": {}
|
|
}
|
|
},
|
|
"default": {
|
|
"description": "",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiStatus"
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "run_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"type": "string"
|
|
}
|
|
],
|
|
"tags": [
|
|
"RunService"
|
|
]
|
|
}
|
|
},
|
|
"/apis/v1beta1/runs/{run_id}:reportMetrics": {
|
|
"post": {
|
|
"summary": "ReportRunMetrics reports metrics of a run. Each metric is reported in its\nown transaction, so this API accepts partial failures. Metric can be\nuniquely identified by (run_id, node_id, name). Duplicate reporting will be\nignored by the API. First reporting wins.",
|
|
"operationId": "ReportRunMetrics",
|
|
"responses": {
|
|
"200": {
|
|
"description": "A successful response.",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiReportRunMetricsResponse"
|
|
}
|
|
},
|
|
"default": {
|
|
"description": "",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiStatus"
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "run_id",
|
|
"description": "Required. The parent run ID of the metric.",
|
|
"in": "path",
|
|
"required": true,
|
|
"type": "string"
|
|
},
|
|
{
|
|
"name": "body",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/apiReportRunMetricsRequest"
|
|
}
|
|
}
|
|
],
|
|
"tags": [
|
|
"RunService"
|
|
]
|
|
}
|
|
},
|
|
"/apis/v1beta1/jobs": {
|
|
"get": {
|
|
"summary": "Find all jobs.",
|
|
"operationId": "ListJobs",
|
|
"responses": {
|
|
"200": {
|
|
"description": "A successful response.",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiListJobsResponse"
|
|
}
|
|
},
|
|
"default": {
|
|
"description": "",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiStatus"
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "page_token",
|
|
"in": "query",
|
|
"required": false,
|
|
"type": "string"
|
|
},
|
|
{
|
|
"name": "page_size",
|
|
"in": "query",
|
|
"required": false,
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
{
|
|
"name": "sort_by",
|
|
"description": "Can be format of \"field_name\", \"field_name asc\" or \"field_name des\".\nAscending by default.",
|
|
"in": "query",
|
|
"required": false,
|
|
"type": "string"
|
|
},
|
|
{
|
|
"name": "resource_reference_key.type",
|
|
"description": "The type of the resource that referred to.",
|
|
"in": "query",
|
|
"required": false,
|
|
"type": "string",
|
|
"enum": [
|
|
"UNKNOWN_RESOURCE_TYPE",
|
|
"EXPERIMENT",
|
|
"JOB",
|
|
"PIPELINE",
|
|
"PIPELINE_VERSION",
|
|
"NAMESPACE"
|
|
],
|
|
"default": "UNKNOWN_RESOURCE_TYPE"
|
|
},
|
|
{
|
|
"name": "resource_reference_key.id",
|
|
"description": "The ID of the resource that referred to.",
|
|
"in": "query",
|
|
"required": false,
|
|
"type": "string"
|
|
},
|
|
{
|
|
"name": "filter",
|
|
"description": "A url-encoded, JSON-serialized Filter protocol buffer (see\n[filter.proto](https://github.com/kubeflow/pipelines/\nblob/master/backend/api/filter.proto)).",
|
|
"in": "query",
|
|
"required": false,
|
|
"type": "string"
|
|
}
|
|
],
|
|
"tags": [
|
|
"JobService"
|
|
]
|
|
},
|
|
"post": {
|
|
"summary": "Create a new job.",
|
|
"operationId": "CreateJob",
|
|
"responses": {
|
|
"200": {
|
|
"description": "A successful response.",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiJob"
|
|
}
|
|
},
|
|
"default": {
|
|
"description": "",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiStatus"
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "body",
|
|
"description": "The job to be created",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/apiJob"
|
|
}
|
|
}
|
|
],
|
|
"tags": [
|
|
"JobService"
|
|
]
|
|
}
|
|
},
|
|
"/apis/v1beta1/jobs/{id}": {
|
|
"get": {
|
|
"summary": "Find a specific job by ID.",
|
|
"operationId": "GetJob",
|
|
"responses": {
|
|
"200": {
|
|
"description": "A successful response.",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiJob"
|
|
}
|
|
},
|
|
"default": {
|
|
"description": "",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiStatus"
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"description": "The ID of the job to be retrieved",
|
|
"in": "path",
|
|
"required": true,
|
|
"type": "string"
|
|
}
|
|
],
|
|
"tags": [
|
|
"JobService"
|
|
]
|
|
},
|
|
"delete": {
|
|
"summary": "Delete a job.",
|
|
"operationId": "DeleteJob",
|
|
"responses": {
|
|
"200": {
|
|
"description": "A successful response.",
|
|
"schema": {
|
|
"properties": {}
|
|
}
|
|
},
|
|
"default": {
|
|
"description": "",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiStatus"
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"description": "The ID of the job to be deleted",
|
|
"in": "path",
|
|
"required": true,
|
|
"type": "string"
|
|
}
|
|
],
|
|
"tags": [
|
|
"JobService"
|
|
]
|
|
}
|
|
},
|
|
"/apis/v1beta1/jobs/{id}/disable": {
|
|
"post": {
|
|
"summary": "Disable a job.",
|
|
"operationId": "DisableJob",
|
|
"responses": {
|
|
"200": {
|
|
"description": "A successful response.",
|
|
"schema": {
|
|
"properties": {}
|
|
}
|
|
},
|
|
"default": {
|
|
"description": "",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiStatus"
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"description": "The ID of the job to be disabled",
|
|
"in": "path",
|
|
"required": true,
|
|
"type": "string"
|
|
}
|
|
],
|
|
"tags": [
|
|
"JobService"
|
|
]
|
|
}
|
|
},
|
|
"/apis/v1beta1/jobs/{id}/enable": {
|
|
"post": {
|
|
"summary": "Enable a job.",
|
|
"operationId": "EnableJob",
|
|
"responses": {
|
|
"200": {
|
|
"description": "A successful response.",
|
|
"schema": {
|
|
"properties": {}
|
|
}
|
|
},
|
|
"default": {
|
|
"description": "",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiStatus"
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"description": "The ID of the job to be enabled",
|
|
"in": "path",
|
|
"required": true,
|
|
"type": "string"
|
|
}
|
|
],
|
|
"tags": [
|
|
"JobService"
|
|
]
|
|
}
|
|
},
|
|
"/apis/v1beta1/pipeline_versions": {
|
|
"get": {
|
|
"operationId": "ListPipelineVersions",
|
|
"responses": {
|
|
"200": {
|
|
"description": "A successful response.",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiListPipelineVersionsResponse"
|
|
}
|
|
},
|
|
"default": {
|
|
"description": "",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiStatus"
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "resource_key.type",
|
|
"description": "The type of the resource that referred to.",
|
|
"in": "query",
|
|
"required": false,
|
|
"type": "string",
|
|
"enum": [
|
|
"UNKNOWN_RESOURCE_TYPE",
|
|
"EXPERIMENT",
|
|
"JOB",
|
|
"PIPELINE",
|
|
"PIPELINE_VERSION",
|
|
"NAMESPACE"
|
|
],
|
|
"default": "UNKNOWN_RESOURCE_TYPE"
|
|
},
|
|
{
|
|
"name": "resource_key.id",
|
|
"description": "The ID of the resource that referred to.",
|
|
"in": "query",
|
|
"required": false,
|
|
"type": "string"
|
|
},
|
|
{
|
|
"name": "page_size",
|
|
"in": "query",
|
|
"required": false,
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
{
|
|
"name": "page_token",
|
|
"in": "query",
|
|
"required": false,
|
|
"type": "string"
|
|
},
|
|
{
|
|
"name": "sort_by",
|
|
"description": "Can be format of \"field_name\", \"field_name asc\" or \"field_name des\"\nAscending by default.",
|
|
"in": "query",
|
|
"required": false,
|
|
"type": "string"
|
|
},
|
|
{
|
|
"name": "filter",
|
|
"description": "A base-64 encoded, JSON-serialized Filter protocol buffer (see\nfilter.proto).",
|
|
"in": "query",
|
|
"required": false,
|
|
"type": "string"
|
|
}
|
|
],
|
|
"tags": [
|
|
"PipelineService"
|
|
]
|
|
},
|
|
"post": {
|
|
"operationId": "CreatePipelineVersion",
|
|
"responses": {
|
|
"200": {
|
|
"description": "A successful response.",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiPipelineVersion"
|
|
}
|
|
},
|
|
"default": {
|
|
"description": "",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiStatus"
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "body",
|
|
"description": "ResourceReference inside PipelineVersion specifies the pipeline that this\nversion belongs to.",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/apiPipelineVersion"
|
|
}
|
|
}
|
|
],
|
|
"tags": [
|
|
"PipelineService"
|
|
]
|
|
}
|
|
},
|
|
"/apis/v1beta1/pipeline_versions/{version_id}": {
|
|
"get": {
|
|
"operationId": "GetPipelineVersion",
|
|
"responses": {
|
|
"200": {
|
|
"description": "A successful response.",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiPipelineVersion"
|
|
}
|
|
},
|
|
"default": {
|
|
"description": "",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiStatus"
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "version_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"type": "string"
|
|
}
|
|
],
|
|
"tags": [
|
|
"PipelineService"
|
|
]
|
|
},
|
|
"delete": {
|
|
"operationId": "DeletePipelineVersion",
|
|
"responses": {
|
|
"200": {
|
|
"description": "A successful response.",
|
|
"schema": {
|
|
"properties": {}
|
|
}
|
|
},
|
|
"default": {
|
|
"description": "",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiStatus"
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "version_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"type": "string"
|
|
}
|
|
],
|
|
"tags": [
|
|
"PipelineService"
|
|
]
|
|
}
|
|
},
|
|
"/apis/v1beta1/pipeline_versions/{version_id}/templates": {
|
|
"get": {
|
|
"operationId": "GetPipelineVersionTemplate",
|
|
"responses": {
|
|
"200": {
|
|
"description": "A successful response.",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiGetTemplateResponse"
|
|
}
|
|
},
|
|
"default": {
|
|
"description": "",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiStatus"
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "version_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"type": "string"
|
|
}
|
|
],
|
|
"tags": [
|
|
"PipelineService"
|
|
]
|
|
}
|
|
},
|
|
"/apis/v1beta1/pipelines": {
|
|
"get": {
|
|
"summary": "Find all pipelines.",
|
|
"operationId": "ListPipelines",
|
|
"responses": {
|
|
"200": {
|
|
"description": "A successful response.",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiListPipelinesResponse"
|
|
}
|
|
},
|
|
"default": {
|
|
"description": "",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiStatus"
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "page_token",
|
|
"in": "query",
|
|
"required": false,
|
|
"type": "string"
|
|
},
|
|
{
|
|
"name": "page_size",
|
|
"in": "query",
|
|
"required": false,
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
{
|
|
"name": "sort_by",
|
|
"description": "Can be format of \"field_name\", \"field_name asc\" or \"field_name des\"\nAscending by default.",
|
|
"in": "query",
|
|
"required": false,
|
|
"type": "string"
|
|
},
|
|
{
|
|
"name": "filter",
|
|
"description": "A url-encoded, JSON-serialized Filter protocol buffer (see\n[filter.proto](https://github.com/kubeflow/pipelines/\nblob/master/backend/api/filter.proto)).",
|
|
"in": "query",
|
|
"required": false,
|
|
"type": "string"
|
|
}
|
|
],
|
|
"tags": [
|
|
"PipelineService"
|
|
]
|
|
},
|
|
"post": {
|
|
"summary": "Add a pipeline.",
|
|
"operationId": "CreatePipeline",
|
|
"responses": {
|
|
"200": {
|
|
"description": "A successful response.",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiPipeline"
|
|
}
|
|
},
|
|
"default": {
|
|
"description": "",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiStatus"
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "body",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/apiPipeline"
|
|
}
|
|
}
|
|
],
|
|
"tags": [
|
|
"PipelineService"
|
|
]
|
|
}
|
|
},
|
|
"/apis/v1beta1/pipelines/{id}": {
|
|
"get": {
|
|
"summary": "Find a specific pipeline by ID.",
|
|
"operationId": "GetPipeline",
|
|
"responses": {
|
|
"200": {
|
|
"description": "A successful response.",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiPipeline"
|
|
}
|
|
},
|
|
"default": {
|
|
"description": "",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiStatus"
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"type": "string"
|
|
}
|
|
],
|
|
"tags": [
|
|
"PipelineService"
|
|
]
|
|
},
|
|
"delete": {
|
|
"summary": "Delete a pipeline.",
|
|
"operationId": "DeletePipeline",
|
|
"responses": {
|
|
"200": {
|
|
"description": "A successful response.",
|
|
"schema": {
|
|
"properties": {}
|
|
}
|
|
},
|
|
"default": {
|
|
"description": "",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiStatus"
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"type": "string"
|
|
}
|
|
],
|
|
"tags": [
|
|
"PipelineService"
|
|
]
|
|
}
|
|
},
|
|
"/apis/v1beta1/pipelines/{id}/templates": {
|
|
"get": {
|
|
"summary": "Get a YAML template for the selected pipeline.",
|
|
"operationId": "GetTemplate",
|
|
"responses": {
|
|
"200": {
|
|
"description": "A successful response.",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiGetTemplateResponse"
|
|
}
|
|
},
|
|
"default": {
|
|
"description": "",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiStatus"
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"type": "string"
|
|
}
|
|
],
|
|
"tags": [
|
|
"PipelineService"
|
|
]
|
|
}
|
|
},
|
|
"/apis/v1beta1/experiments": {
|
|
"get": {
|
|
"summary": "Find all experiments.",
|
|
"operationId": "ListExperiment",
|
|
"responses": {
|
|
"200": {
|
|
"description": "A successful response.",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiListExperimentsResponse"
|
|
}
|
|
},
|
|
"default": {
|
|
"description": "",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiStatus"
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "page_token",
|
|
"in": "query",
|
|
"required": false,
|
|
"type": "string"
|
|
},
|
|
{
|
|
"name": "page_size",
|
|
"in": "query",
|
|
"required": false,
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
{
|
|
"name": "sort_by",
|
|
"description": "Can be format of \"field_name\", \"field_name asc\" or \"field_name des\"\nAscending by default.",
|
|
"in": "query",
|
|
"required": false,
|
|
"type": "string"
|
|
},
|
|
{
|
|
"name": "filter",
|
|
"description": "A url-encoded, JSON-serialized Filter protocol buffer (see\n[filter.proto](https://github.com/kubeflow/pipelines/\nblob/master/backend/api/filter.proto)).",
|
|
"in": "query",
|
|
"required": false,
|
|
"type": "string"
|
|
}
|
|
],
|
|
"tags": [
|
|
"ExperimentService"
|
|
]
|
|
},
|
|
"post": {
|
|
"summary": "Create a new experiment.",
|
|
"operationId": "CreateExperiment",
|
|
"responses": {
|
|
"200": {
|
|
"description": "A successful response.",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiExperiment"
|
|
}
|
|
},
|
|
"default": {
|
|
"description": "",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiStatus"
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "body",
|
|
"description": "The experiment to be created.",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/apiExperiment"
|
|
}
|
|
}
|
|
],
|
|
"tags": [
|
|
"ExperimentService"
|
|
]
|
|
}
|
|
},
|
|
"/apis/v1beta1/experiments/{id}": {
|
|
"get": {
|
|
"summary": "Find a specific experiment by ID.",
|
|
"operationId": "GetExperiment",
|
|
"responses": {
|
|
"200": {
|
|
"description": "A successful response.",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiExperiment"
|
|
}
|
|
},
|
|
"default": {
|
|
"description": "",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiStatus"
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"description": "The ID of the experiment to be retrieved.",
|
|
"in": "path",
|
|
"required": true,
|
|
"type": "string"
|
|
}
|
|
],
|
|
"tags": [
|
|
"ExperimentService"
|
|
]
|
|
},
|
|
"delete": {
|
|
"summary": "Delete an experiment.",
|
|
"operationId": "DeleteExperiment",
|
|
"responses": {
|
|
"200": {
|
|
"description": "A successful response.",
|
|
"schema": {
|
|
"properties": {}
|
|
}
|
|
},
|
|
"default": {
|
|
"description": "",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiStatus"
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"description": "The ID of the experiment to be deleted.",
|
|
"in": "path",
|
|
"required": true,
|
|
"type": "string"
|
|
}
|
|
],
|
|
"tags": [
|
|
"ExperimentService"
|
|
]
|
|
}
|
|
},
|
|
"/apis/v1beta1/pipelines/upload": {
|
|
"post": {
|
|
"operationId": "UploadPipeline",
|
|
"consumes": [
|
|
"multipart/form-data"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiPipeline"
|
|
}
|
|
},
|
|
"default": {
|
|
"description": "",
|
|
"schema": {
|
|
"$ref": "#/definitions/apiStatus"
|
|
}
|
|
}
|
|
},
|
|
"parameters": [
|
|
{
|
|
"name": "uploadfile",
|
|
"in": "formData",
|
|
"required": true,
|
|
"type": "file",
|
|
"description": "The pipeline to upload. Maximum size of 32MB is supported."
|
|
},
|
|
{
|
|
"name": "name",
|
|
"in": "query",
|
|
"required": false,
|
|
"type": "string"
|
|
}
|
|
],
|
|
"tags": [
|
|
"PipelineUploadService"
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"definitions": {
|
|
"ReportRunMetricsResponseReportRunMetricResult": {
|
|
"type": "object",
|
|
"properties": {
|
|
"metric_name": {
|
|
"type": "string",
|
|
"description": "Output. The name of the metric."
|
|
},
|
|
"metric_node_id": {
|
|
"type": "string",
|
|
"description": "Output. The ID of the node which reports the metric."
|
|
},
|
|
"status": {
|
|
"$ref": "#/definitions/ReportRunMetricsResponseReportRunMetricResultStatus",
|
|
"description": "Output. The status of the metric reporting."
|
|
},
|
|
"message": {
|
|
"type": "string",
|
|
"description": "Output. The detailed message of the error of the reporting."
|
|
}
|
|
}
|
|
},
|
|
"ReportRunMetricsResponseReportRunMetricResultStatus": {
|
|
"type": "string",
|
|
"enum": [
|
|
"UNSPECIFIED",
|
|
"OK",
|
|
"INVALID_ARGUMENT",
|
|
"DUPLICATE_REPORTING",
|
|
"INTERNAL_ERROR"
|
|
],
|
|
"default": "UNSPECIFIED",
|
|
"description": " - UNSPECIFIED: Default value if not present.\n - OK: Indicates successful reporting.\n - INVALID_ARGUMENT: Indicates that the payload of the metric is invalid.\n - DUPLICATE_REPORTING: Indicates that the metric has been reported before.\n - INTERNAL_ERROR: Indicates that something went wrong in the server."
|
|
},
|
|
"RunMetricFormat": {
|
|
"type": "string",
|
|
"enum": [
|
|
"UNSPECIFIED",
|
|
"RAW",
|
|
"PERCENTAGE"
|
|
],
|
|
"default": "UNSPECIFIED",
|
|
"description": " - UNSPECIFIED: Default value if not present.\n - RAW: Display value as its raw format.\n - PERCENTAGE: Display value in percentage format."
|
|
},
|
|
"RunStorageState": {
|
|
"type": "string",
|
|
"enum": [
|
|
"STORAGESTATE_AVAILABLE",
|
|
"STORAGESTATE_ARCHIVED"
|
|
],
|
|
"default": "STORAGESTATE_AVAILABLE"
|
|
},
|
|
"apiListRunsResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"runs": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/apiRun"
|
|
}
|
|
},
|
|
"total_size": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"next_page_token": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"apiParameter": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"value": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"apiPipelineRuntime": {
|
|
"type": "object",
|
|
"properties": {
|
|
"pipeline_manifest": {
|
|
"type": "string",
|
|
"description": "Output. The runtime JSON manifest of the pipeline, including the status\nof pipeline steps and fields need for UI visualization etc."
|
|
},
|
|
"workflow_manifest": {
|
|
"type": "string",
|
|
"description": "Output. The runtime JSON manifest of the argo workflow.\nThis is deprecated after pipeline_runtime_manifest is in use."
|
|
}
|
|
}
|
|
},
|
|
"apiPipelineSpec": {
|
|
"type": "object",
|
|
"properties": {
|
|
"pipeline_id": {
|
|
"type": "string",
|
|
"description": "Optional input field. The ID of the pipeline user uploaded before."
|
|
},
|
|
"pipeline_name": {
|
|
"type": "string",
|
|
"description": "Optional output field. The name of the pipeline.\nNot empty if the pipeline id is not empty."
|
|
},
|
|
"workflow_manifest": {
|
|
"type": "string",
|
|
"description": "Optional input field. The marshalled raw argo JSON workflow.\nThis will be deprecated when pipeline_manifest is in use."
|
|
},
|
|
"pipeline_manifest": {
|
|
"type": "string",
|
|
"description": "Optional input field. The raw pipeline JSON spec."
|
|
},
|
|
"parameters": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/apiParameter"
|
|
},
|
|
"description": "The parameter user provide to inject to the pipeline JSON.\nIf a default value of a parameter exist in the JSON,\nthe value user provided here will replace."
|
|
}
|
|
}
|
|
},
|
|
"apiReadArtifactResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "string",
|
|
"format": "byte",
|
|
"description": "The bytes of the artifact content."
|
|
}
|
|
}
|
|
},
|
|
"apiRelationship": {
|
|
"type": "string",
|
|
"enum": [
|
|
"UNKNOWN_RELATIONSHIP",
|
|
"OWNER",
|
|
"CREATOR"
|
|
],
|
|
"default": "UNKNOWN_RELATIONSHIP"
|
|
},
|
|
"apiReportRunMetricsRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"run_id": {
|
|
"type": "string",
|
|
"description": "Required. The parent run ID of the metric."
|
|
},
|
|
"metrics": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/apiRunMetric"
|
|
},
|
|
"description": "List of metrics to report."
|
|
}
|
|
}
|
|
},
|
|
"apiReportRunMetricsResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"results": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/ReportRunMetricsResponseReportRunMetricResult"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"apiResourceKey": {
|
|
"type": "object",
|
|
"properties": {
|
|
"type": {
|
|
"$ref": "#/definitions/apiResourceType",
|
|
"description": "The type of the resource that referred to."
|
|
},
|
|
"id": {
|
|
"type": "string",
|
|
"description": "The ID of the resource that referred to."
|
|
}
|
|
}
|
|
},
|
|
"apiResourceReference": {
|
|
"type": "object",
|
|
"properties": {
|
|
"key": {
|
|
"$ref": "#/definitions/apiResourceKey"
|
|
},
|
|
"name": {
|
|
"type": "string",
|
|
"description": "The name of the resource that referred to."
|
|
},
|
|
"relationship": {
|
|
"$ref": "#/definitions/apiRelationship",
|
|
"description": "Required field. The relationship from referred resource to the object."
|
|
}
|
|
}
|
|
},
|
|
"apiResourceType": {
|
|
"type": "string",
|
|
"enum": [
|
|
"UNKNOWN_RESOURCE_TYPE",
|
|
"EXPERIMENT",
|
|
"JOB",
|
|
"PIPELINE",
|
|
"PIPELINE_VERSION",
|
|
"NAMESPACE"
|
|
],
|
|
"default": "UNKNOWN_RESOURCE_TYPE"
|
|
},
|
|
"apiRun": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"description": "Output. Unique run ID. Generated by API server."
|
|
},
|
|
"name": {
|
|
"type": "string",
|
|
"description": "Required input field. Name provided by user,\nor auto generated if run is created by scheduled job. Not unique."
|
|
},
|
|
"storage_state": {
|
|
"$ref": "#/definitions/RunStorageState"
|
|
},
|
|
"description": {
|
|
"type": "string",
|
|
"title": "Optional input field. Describing the purpose of the run"
|
|
},
|
|
"pipeline_spec": {
|
|
"$ref": "#/definitions/apiPipelineSpec",
|
|
"description": "Required input field.\nDescribing what the pipeline manifest and parameters to use for the run."
|
|
},
|
|
"resource_references": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/apiResourceReference"
|
|
},
|
|
"description": "Optional input field. Specify which resource this run belongs to."
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"description": "Output. The time that the run created."
|
|
},
|
|
"scheduled_at": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"description": "Output. When this run is scheduled to run. This could be different from\ncreated_at. For example, if a run is from a backfilling job that was\nsupposed to run 2 month ago, the scheduled_at is 2 month ago,\nv.s. created_at is the current time."
|
|
},
|
|
"finished_at": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"description": "Output. The time this run is finished."
|
|
},
|
|
"status": {
|
|
"type": "string",
|
|
"title": "Output. The status of the run.\nOne of [Pending, Running, Succeeded, Skipped, Failed, Error]"
|
|
},
|
|
"error": {
|
|
"type": "string",
|
|
"description": "In case any error happens retrieving a run field, only run ID\nand the error message is returned. Client has the flexibility of choosing\nhow to handle error. This is especially useful during listing call."
|
|
},
|
|
"metrics": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/apiRunMetric"
|
|
},
|
|
"description": "Output. The metrics of the run. The metrics are reported by ReportMetrics\nAPI."
|
|
}
|
|
}
|
|
},
|
|
"apiRunDetail": {
|
|
"type": "object",
|
|
"properties": {
|
|
"run": {
|
|
"$ref": "#/definitions/apiRun"
|
|
},
|
|
"pipeline_runtime": {
|
|
"$ref": "#/definitions/apiPipelineRuntime"
|
|
}
|
|
}
|
|
},
|
|
"apiRunMetric": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"description": "Required. The user defined name of the metric. It must between 1 and 63\ncharacters long and must conform to the following regular expression:\n`[a-z]([-a-z0-9]*[a-z0-9])?`."
|
|
},
|
|
"node_id": {
|
|
"type": "string",
|
|
"description": "Required. The runtime node ID which reports the metric. The node ID can be\nfound in the RunDetail.workflow.Status. Metric with same (node_id, name)\nare considerd as duplicate. Only the first reporting will be recorded. Max\nlength is 128."
|
|
},
|
|
"number_value": {
|
|
"type": "number",
|
|
"format": "double",
|
|
"description": "The number value of the metric."
|
|
},
|
|
"format": {
|
|
"$ref": "#/definitions/RunMetricFormat",
|
|
"description": "The display format of metric."
|
|
}
|
|
}
|
|
},
|
|
"apiStatus": {
|
|
"type": "object",
|
|
"properties": {
|
|
"error": {
|
|
"type": "string"
|
|
},
|
|
"code": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"details": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/protobufAny"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"protobufAny": {
|
|
"type": "object",
|
|
"properties": {
|
|
"type_url": {
|
|
"type": "string",
|
|
"description": "A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics."
|
|
},
|
|
"value": {
|
|
"type": "string",
|
|
"format": "byte",
|
|
"description": "Must be a valid serialized protocol buffer of the above specified type."
|
|
}
|
|
},
|
|
"description": "`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n\n Example 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\n Example 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := ptypes.MarshalAny(foo)\n ...\n foo := &pb.Foo{}\n if err := ptypes.UnmarshalAny(any, foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\n\nJSON\n====\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": <string>,\n \"lastName\": <string>\n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }"
|
|
},
|
|
"JobMode": {
|
|
"type": "string",
|
|
"enum": [
|
|
"UNKNOWN_MODE",
|
|
"ENABLED",
|
|
"DISABLED"
|
|
],
|
|
"default": "UNKNOWN_MODE",
|
|
"description": "Required input.\n\n - DISABLED: The job won't schedule any run if disabled."
|
|
},
|
|
"apiCronSchedule": {
|
|
"type": "object",
|
|
"properties": {
|
|
"start_time": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"title": "The start time of the cron job"
|
|
},
|
|
"end_time": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"title": "The end time of the cron job"
|
|
},
|
|
"cron": {
|
|
"type": "string",
|
|
"title": "The cron string. For details how to compose a cron, visit\nttps://en.wikipedia.org/wiki/Cron"
|
|
}
|
|
},
|
|
"title": "CronSchedule allow scheduling the job with unix-like cron"
|
|
},
|
|
"apiJob": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"description": "Output. Unique run ID. Generated by API server."
|
|
},
|
|
"name": {
|
|
"type": "string",
|
|
"description": "Required input field. Job name provided by user. Not unique."
|
|
},
|
|
"description": {
|
|
"type": "string",
|
|
"title": "Optional input field. Describing the purpose of the job"
|
|
},
|
|
"pipeline_spec": {
|
|
"$ref": "#/definitions/apiPipelineSpec",
|
|
"description": "Required input field.\nDescribing what the pipeline manifest and parameters to use\nfor the scheduled job."
|
|
},
|
|
"resource_references": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/apiResourceReference"
|
|
},
|
|
"description": "Optional input field. Specify which resource this run belongs to."
|
|
},
|
|
"max_concurrency": {
|
|
"type": "string",
|
|
"format": "int64",
|
|
"title": "Required input field.\nSpecify how many runs can be executed concurrently. Rage [1-10]"
|
|
},
|
|
"trigger": {
|
|
"$ref": "#/definitions/apiTrigger",
|
|
"description": "Required input field.\nSpecify how a run is triggered. Support cron mode or periodic mode."
|
|
},
|
|
"mode": {
|
|
"$ref": "#/definitions/JobMode"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"description": "Output. The time this job is created."
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"description": "Output. The last time this job is updated."
|
|
},
|
|
"status": {
|
|
"type": "string",
|
|
"title": "Output. The status of the job.\nOne of [Enable, Disable, Error]"
|
|
},
|
|
"error": {
|
|
"type": "string",
|
|
"description": "In case any error happens retrieving a job field, only job ID\nand the error message is returned. Client has the flexibility of choosing\nhow to handle error. This is especially useful during listing call."
|
|
},
|
|
"enabled": {
|
|
"type": "boolean",
|
|
"format": "boolean",
|
|
"description": "Input. Whether the job is enabled or not."
|
|
}
|
|
}
|
|
},
|
|
"apiListJobsResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"jobs": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/apiJob"
|
|
},
|
|
"description": "A list of jobs returned."
|
|
},
|
|
"total_size": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"next_page_token": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"apiPeriodicSchedule": {
|
|
"type": "object",
|
|
"properties": {
|
|
"start_time": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"title": "The start time of the periodic job"
|
|
},
|
|
"end_time": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"title": "The end time of the periodic job"
|
|
},
|
|
"interval_second": {
|
|
"type": "string",
|
|
"format": "int64",
|
|
"title": "The time interval between the starting time of consecutive jobs"
|
|
}
|
|
},
|
|
"title": "PeriodicSchedule allow scheduling the job periodically with certain interval"
|
|
},
|
|
"apiTrigger": {
|
|
"type": "object",
|
|
"properties": {
|
|
"cron_schedule": {
|
|
"$ref": "#/definitions/apiCronSchedule"
|
|
},
|
|
"periodic_schedule": {
|
|
"$ref": "#/definitions/apiPeriodicSchedule"
|
|
}
|
|
},
|
|
"description": "Trigger defines what starts a pipeline run."
|
|
},
|
|
"apiGetTemplateResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"template": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"apiListPipelineVersionsResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"versions": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/apiPipelineVersion"
|
|
}
|
|
},
|
|
"next_page_token": {
|
|
"type": "string"
|
|
},
|
|
"total_size": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
}
|
|
}
|
|
},
|
|
"apiListPipelinesResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"pipelines": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/apiPipeline"
|
|
}
|
|
},
|
|
"total_size": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"next_page_token": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"apiPipeline": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"description": "Output. Unique pipeline ID. Generated by API server."
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"description": "Output. The time this pipeline is created."
|
|
},
|
|
"name": {
|
|
"type": "string",
|
|
"description": "Optional input field. Pipeline name provided by user. If not specified,\nfile name is used as pipeline name."
|
|
},
|
|
"description": {
|
|
"type": "string",
|
|
"description": "Optional input field. Describing the purpose of the job."
|
|
},
|
|
"parameters": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/apiParameter"
|
|
},
|
|
"description": "Output. The input parameters for this pipeline.\nTODO(jingzhang36): replace this parameters field with the parameters field\ninside PipelineVersion when all usage of the former has been changed to use\nthe latter."
|
|
},
|
|
"url": {
|
|
"$ref": "#/definitions/apiUrl",
|
|
"description": "The URL to the source of the pipeline. This is required when creating the\npipeine through CreatePipeline API.\nTODO(jingzhang36): replace this url field with the code_source_urls field\ninside PipelineVersion when all usage of the former has been changed to use\nthe latter."
|
|
},
|
|
"error": {
|
|
"type": "string",
|
|
"description": "In case any error happens retrieving a pipeline field, only pipeline ID\nand the error message is returned. Client has the flexibility of choosing\nhow to handle error. This is especially useful during listing call."
|
|
},
|
|
"default_version": {
|
|
"$ref": "#/definitions/apiPipelineVersion",
|
|
"title": "Output only. The default version of the pipeline. As of now, the latest\nversion is used as default. (In the future, if desired by customers, we\ncan allow them to set default version.)",
|
|
"readOnly": true
|
|
}
|
|
}
|
|
},
|
|
"apiPipelineVersion": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"description": "Output. Unique version ID. Generated by API server."
|
|
},
|
|
"name": {
|
|
"type": "string",
|
|
"description": "Optional input field. Version name provided by user."
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"description": "Output. The time this pipeline version is created."
|
|
},
|
|
"parameters": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/apiParameter"
|
|
},
|
|
"description": "Output. The input parameters for this pipeline."
|
|
},
|
|
"code_source_url": {
|
|
"type": "string",
|
|
"description": "Input. Optional. Pipeline version code source."
|
|
},
|
|
"package_url": {
|
|
"$ref": "#/definitions/apiUrl",
|
|
"description": "Input. Required. Pipeline version package url.\nWhe calling CreatePipelineVersion API method, need to provide one package\nfile location."
|
|
},
|
|
"resource_references": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/apiResourceReference"
|
|
},
|
|
"description": "Input. Required. E.g., specify which pipeline this pipeline version belongs\nto."
|
|
}
|
|
}
|
|
},
|
|
"apiUrl": {
|
|
"type": "object",
|
|
"properties": {
|
|
"pipeline_url": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"apiExperiment": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"description": "Output. Unique experiment ID. Generated by API server."
|
|
},
|
|
"name": {
|
|
"type": "string",
|
|
"description": "Required input field. Unique experiment name provided by user."
|
|
},
|
|
"description": {
|
|
"type": "string",
|
|
"title": "Optional input field. Describing the purpose of the experiment"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"description": "Output. The time that the experiment created."
|
|
}
|
|
}
|
|
},
|
|
"apiListExperimentsResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"experiments": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/apiExperiment"
|
|
},
|
|
"description": "A list of experiments returned."
|
|
},
|
|
"total_size": {
|
|
"type": "integer",
|
|
"format": "int32",
|
|
"description": "The total number of experiments for the given query."
|
|
},
|
|
"next_page_token": {
|
|
"type": "string",
|
|
"description": "The token to list the next page of experiments."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"securityDefinitions": {
|
|
"Bearer": {
|
|
"type": "apiKey",
|
|
"name": "authorization",
|
|
"in": "header"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
]
|
|
}
|