{
  "swagger": "2.0",
  "schemes": [
    "https"
  ],
  "host": "azure.local",
  "info": {
    "title": "Artifact",
    "version": "2019-08-01",
    "x-apisguru-categories": [
      "cloud"
    ],
    "x-logo": {
      "url": "https://api.apis.guru/v2/cache/logo/https_assets.onestore.ms_cdnfiles_onestorerolling-1606-01000_shell_v3_images_logo_microsoft.png"
    },
    "x-origin": [
      {
        "format": "swagger",
        "url": "https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/specification/machinelearningservices/data-plane/Microsoft.MachineLearningServices/preview/2019-08-01/artifact.json",
        "version": "2.0"
      }
    ],
    "x-preferred": false,
    "x-providerName": "azure.com",
    "x-serviceName": "machinelearningservices-artifact",
    "x-tags": [
      "Azure",
      "Microsoft"
    ]
  },
  "securityDefinitions": {
    "azure_auth": {
      "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
      "flow": "implicit",
      "scopes": {
        "user_impersonation": "impersonate your user account"
      },
      "type": "oauth2"
    }
  },
  "security": [
    {
      "azure_auth": [
        "user_impersonation"
      ]
    }
  ],
  "parameters": {
    "resourceGroupNameParameter": {
      "description": "The Name of the resource group in which the workspace is located.",
      "in": "path",
      "name": "resourceGroupName",
      "required": true,
      "type": "string",
      "x-ms-parameter-location": "method"
    },
    "subscriptionIdParameter": {
      "description": "The Azure Subscription ID.",
      "format": "uuid",
      "in": "path",
      "name": "subscriptionId",
      "required": true,
      "type": "string",
      "x-ms-parameter-location": "method"
    },
    "workspaceNameParameter": {
      "description": "The name of the workspace.",
      "in": "path",
      "name": "workspaceName",
      "required": true,
      "type": "string",
      "x-ms-parameter-location": "method"
    }
  },
  "tags": [],
  "paths": {
    "/artifact/v2.0/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/artifacts/batch/metadata": {
      "post": {
        "consumes": [
          "application/json"
        ],
        "description": "Get Batch Artifacts by the specific Ids.",
        "operationId": "Artifacts_BatchGetById",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/resourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/workspaceNameParameter"
          },
          {
            "description": "The command for Batch Artifact get request.",
            "in": "body",
            "name": "artifactIds",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ArtifactIdList"
            }
          }
        ],
        "produces": [
          "application/json"
        ],
        "responses": {
          "200": {
            "description": "The requested Batch Artifacts are returned successfully.",
            "schema": {
              "$ref": "#/definitions/BatchArtifactContentInformationResult"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "summary": "Get Batch Artifacts by Ids.",
        "tags": [
          "Artifact"
        ]
      }
    },
    "/artifact/v2.0/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/artifacts/metadata": {
      "post": {
        "consumes": [
          "application/json"
        ],
        "description": "Create an Artifact.",
        "operationId": "Artifacts_Create",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/resourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/workspaceNameParameter"
          },
          {
            "description": "The Artifact details.",
            "in": "body",
            "name": "artifact",
            "required": true,
            "schema": {
              "$ref": "#/definitions/Artifact"
            }
          }
        ],
        "produces": [
          "application/json"
        ],
        "responses": {
          "200": {
            "description": "The Artifact is created successfully.",
            "schema": {
              "$ref": "#/definitions/Artifact"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "summary": "Create Artifact.",
        "tags": [
          "Artifact"
        ]
      }
    },
    "/artifact/v2.0/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/artifacts/register": {
      "post": {
        "consumes": [
          "application/json"
        ],
        "description": "Create an Artifact for an existing dataPath.",
        "operationId": "Artifacts_Register",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/resourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/workspaceNameParameter"
          },
          {
            "description": "The Artifact creation details.",
            "in": "body",
            "name": "artifact",
            "required": true,
            "schema": {
              "$ref": "#/definitions/Artifact"
            }
          }
        ],
        "produces": [
          "application/json"
        ],
        "responses": {
          "200": {
            "description": "The Artifact is created successfully.",
            "schema": {
              "$ref": "#/definitions/Artifact"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "summary": "Create an Artifact for an existing data location.",
        "tags": [
          "Artifact"
        ]
      }
    },
    "/artifact/v2.0/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/artifacts/storageuri/batch/metadata": {
      "post": {
        "consumes": [
          "application/json"
        ],
        "description": "Get Batch Artifacts storage by specific Ids.",
        "operationId": "Artifacts_BatchGetStorageById",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/resourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/workspaceNameParameter"
          },
          {
            "description": "The list of artifactIds to get.",
            "in": "body",
            "name": "artifactIds",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ArtifactIdList"
            }
          }
        ],
        "produces": [
          "application/json"
        ],
        "responses": {
          "200": {
            "description": "The Batch Artifact's storage are returned successfully.",
            "schema": {
              "$ref": "#/definitions/BatchArtifactContentInformationResult"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "summary": "Get Batch Artifacts storage by Ids.",
        "tags": [
          "Artifact"
        ]
      }
    },
    "/artifact/v2.0/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/artifacts/{origin}/{container}": {
      "get": {
        "consumes": [],
        "description": "Get Artifacts metadata in a specific container or path.",
        "operationId": "Artifacts_ListInContainer",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/resourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/workspaceNameParameter"
          },
          {
            "description": "The origin of the Artifact.",
            "in": "path",
            "name": "origin",
            "required": true,
            "type": "string"
          },
          {
            "description": "The container name.",
            "in": "path",
            "name": "container",
            "required": true,
            "type": "string"
          },
          {
            "description": "The Artifact Path.",
            "in": "query",
            "name": "path",
            "required": false,
            "type": "string"
          },
          {
            "description": "The continuation token.",
            "in": "query",
            "name": "continuationToken",
            "required": false,
            "type": "string"
          }
        ],
        "produces": [
          "application/json"
        ],
        "responses": {
          "200": {
            "description": "The details of the Artifacts are returned successfully.",
            "schema": {
              "$ref": "#/definitions/PaginatedArtifactList"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "summary": "Get Artifacts metadata in a container or path.",
        "tags": [
          "Artifact"
        ],
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/artifact/v2.0/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/artifacts/{origin}/{container}/batch": {
      "delete": {
        "consumes": [],
        "description": "Delete Artifact Metadata in a specific container.",
        "operationId": "Artifacts_DeleteMetaDataInContainer",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/resourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/workspaceNameParameter"
          },
          {
            "description": "The origin of the Artifact.",
            "in": "path",
            "name": "origin",
            "required": true,
            "type": "string"
          },
          {
            "description": "The container name.",
            "in": "path",
            "name": "container",
            "required": true,
            "type": "string"
          },
          {
            "default": false,
            "description": "If set to true. The delete cannot be revert at later time.",
            "in": "query",
            "name": "hardDelete",
            "required": false,
            "type": "boolean"
          }
        ],
        "produces": [
          "application/json"
        ],
        "responses": {
          "200": {
            "description": "The Artifact metadata deleted successfully."
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "summary": "Delete Artifact Metadata.",
        "tags": [
          "Artifact"
        ]
      }
    },
    "/artifact/v2.0/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/artifacts/{origin}/{container}/batch/ingest/containersas": {
      "post": {
        "consumes": [
          "application/json"
        ],
        "description": "Ingest Batch Artifacts using shared access signature.",
        "operationId": "Artifacts_BatchIngestFromSas",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/resourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/workspaceNameParameter"
          },
          {
            "description": "The origin of the Artifact.",
            "in": "path",
            "name": "origin",
            "required": true,
            "type": "string"
          },
          {
            "description": "The container name.",
            "in": "path",
            "name": "container",
            "required": true,
            "type": "string"
          },
          {
            "description": "The artifact container shared access signature to use for batch ingest.",
            "in": "body",
            "name": "artifactContainerSas",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ArtifactContainerSas"
            }
          }
        ],
        "produces": [
          "application/json"
        ],
        "responses": {
          "200": {
            "description": "The Batch is ingested using shared access signature successfully.",
            "schema": {
              "$ref": "#/definitions/PaginatedArtifactList"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "summary": "Batch ingest using shared access signature.",
        "tags": [
          "Artifact"
        ],
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/artifact/v2.0/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/artifacts/{origin}/{container}/batch/metadata": {
      "post": {
        "consumes": [
          "application/json"
        ],
        "description": "Create a Batch of empty Artifacts from the supplied paths.",
        "operationId": "Artifacts_BatchCreateEmptyArtifacts",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/resourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/workspaceNameParameter"
          },
          {
            "description": "The origin of the Artifact.",
            "in": "path",
            "name": "origin",
            "required": true,
            "type": "string"
          },
          {
            "description": "The container name.",
            "in": "path",
            "name": "container",
            "required": true,
            "type": "string"
          },
          {
            "description": "The list of Artifact paths to create.",
            "in": "body",
            "name": "artifactPaths",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ArtifactPathList"
            }
          }
        ],
        "produces": [
          "application/json"
        ],
        "responses": {
          "200": {
            "description": "The Batch of empty Artifacts created successfully.",
            "schema": {
              "$ref": "#/definitions/BatchArtifactContentInformationResult"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "summary": "Create a batch of empty Artifacts.",
        "tags": [
          "Artifact"
        ]
      }
    },
    "/artifact/v2.0/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/artifacts/{origin}/{container}/batch/metadata:delete": {
      "post": {
        "consumes": [
          "application/json"
        ],
        "description": "Delete a Batch of Artifact Metadata.",
        "operationId": "Artifacts_DeleteBatchMetaData",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/resourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/workspaceNameParameter"
          },
          {
            "description": "The origin of the Artifact.",
            "in": "path",
            "name": "origin",
            "required": true,
            "type": "string"
          },
          {
            "description": "The container name.",
            "in": "path",
            "name": "container",
            "required": true,
            "type": "string"
          },
          {
            "description": "The list of Artifact paths to delete.",
            "in": "body",
            "name": "artifactPaths",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ArtifactPathList"
            }
          },
          {
            "default": false,
            "description": "If set to true, the delete cannot be reverted at a later time.",
            "in": "query",
            "name": "hardDelete",
            "required": false,
            "type": "boolean"
          }
        ],
        "produces": [
          "application/json"
        ],
        "responses": {
          "200": {
            "description": "The batch delete of Artifact metadata completed successfully."
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "summary": "Delete Batch of Artifact Metadata.",
        "tags": [
          "Artifact"
        ]
      }
    },
    "/artifact/v2.0/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/artifacts/{origin}/{container}/content": {
      "get": {
        "consumes": [],
        "description": "Get Artifact content of a specific Id.",
        "operationId": "Artifacts_Download",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/resourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/workspaceNameParameter"
          },
          {
            "description": "The origin of the Artifact.",
            "in": "path",
            "name": "origin",
            "required": true,
            "type": "string"
          },
          {
            "description": "The container name.",
            "in": "path",
            "name": "container",
            "required": true,
            "type": "string"
          },
          {
            "description": "The Artifact Path.",
            "in": "query",
            "name": "path",
            "required": false,
            "type": "string"
          }
        ],
        "produces": [
          "application/json",
          "application/octet-stream"
        ],
        "responses": {
          "200": {
            "description": "File Response",
            "schema": {
              "format": "byte",
              "type": "file"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "summary": "Get Artifact content by Id.",
        "tags": [
          "Artifact"
        ]
      },
      "post": {
        "consumes": [
          "application/octet-stream"
        ],
        "description": "Upload content to an Artifact.",
        "operationId": "Artifacts_Upload",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/resourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/workspaceNameParameter"
          },
          {
            "description": "The origin of the Artifact.",
            "in": "path",
            "name": "origin",
            "required": true,
            "type": "string"
          },
          {
            "description": "The container name.",
            "in": "path",
            "name": "container",
            "required": true,
            "type": "string"
          },
          {
            "description": "The Artifact Path.",
            "in": "query",
            "name": "path",
            "required": false,
            "type": "string"
          },
          {
            "description": "The index.",
            "format": "int32",
            "in": "query",
            "name": "index",
            "required": false,
            "type": "integer"
          },
          {
            "default": false,
            "description": "Whether or not to append the content or replace it.",
            "in": "query",
            "name": "append",
            "required": false,
            "type": "boolean"
          },
          {
            "default": false,
            "description": "whether to allow overwrite if Artifact Content exist already. when set to true, Overwrite happens if Artifact Content already exists",
            "in": "query",
            "name": "allowOverwrite",
            "required": false,
            "type": "boolean"
          },
          {
            "description": "The file upload.",
            "in": "body",
            "name": "content",
            "required": true,
            "schema": {
              "format": "binary",
              "type": "string"
            }
          }
        ],
        "produces": [
          "application/json"
        ],
        "responses": {
          "200": {
            "description": "The Artifact content is uploaded successfully.",
            "schema": {
              "$ref": "#/definitions/Artifact"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "summary": "Upload Artifact content.",
        "tags": [
          "Artifact"
        ]
      }
    },
    "/artifact/v2.0/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/artifacts/{origin}/{container}/contentinfo": {
      "get": {
        "consumes": [],
        "description": "Get content information of an Artifact.",
        "operationId": "Artifacts_GetContentInformation",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/resourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/workspaceNameParameter"
          },
          {
            "description": "The origin of the Artifact.",
            "in": "path",
            "name": "origin",
            "required": true,
            "type": "string"
          },
          {
            "description": "The container name.",
            "in": "path",
            "name": "container",
            "required": true,
            "type": "string"
          },
          {
            "description": "The Artifact Path.",
            "in": "query",
            "name": "path",
            "required": false,
            "type": "string"
          }
        ],
        "produces": [
          "application/json"
        ],
        "responses": {
          "200": {
            "description": "The Artifact content information is returned successfully.",
            "schema": {
              "$ref": "#/definitions/ArtifactContentInformation"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "summary": "Get Artifact content information.",
        "tags": [
          "Artifact"
        ]
      }
    },
    "/artifact/v2.0/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/artifacts/{origin}/{container}/contentinfo/storageuri": {
      "get": {
        "consumes": [],
        "description": "Get storage content information of an Artifact.",
        "operationId": "Artifacts_GetStorageContentInformation",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/resourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/workspaceNameParameter"
          },
          {
            "description": "The origin of the Artifact.",
            "in": "path",
            "name": "origin",
            "required": true,
            "type": "string"
          },
          {
            "description": "The container name.",
            "in": "path",
            "name": "container",
            "required": true,
            "type": "string"
          },
          {
            "description": "The Artifact Path.",
            "in": "query",
            "name": "path",
            "required": false,
            "type": "string"
          }
        ],
        "produces": [
          "application/json"
        ],
        "responses": {
          "200": {
            "description": "The Artifact storage content information is returned successfully.",
            "schema": {
              "$ref": "#/definitions/ArtifactContentInformation"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "summary": "Get Artifact storage content information.",
        "tags": [
          "Artifact"
        ]
      }
    },
    "/artifact/v2.0/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/artifacts/{origin}/{container}/metadata": {
      "delete": {
        "consumes": [],
        "description": "Delete an Artifact Metadata.",
        "operationId": "Artifacts_DeleteMetaData",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/resourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/workspaceNameParameter"
          },
          {
            "description": "The origin of the Artifact.",
            "in": "path",
            "name": "origin",
            "required": true,
            "type": "string"
          },
          {
            "description": "The container name.",
            "in": "path",
            "name": "container",
            "required": true,
            "type": "string"
          },
          {
            "description": "The Artifact Path.",
            "in": "query",
            "name": "path",
            "required": false,
            "type": "string"
          },
          {
            "default": false,
            "description": "If set to true. The delete cannot be revert at later time.",
            "in": "query",
            "name": "hardDelete",
            "required": false,
            "type": "boolean"
          }
        ],
        "produces": [
          "application/json"
        ],
        "responses": {
          "200": {
            "description": "The Artifact metadata deleted successfully."
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "summary": "Delete Artifact Metadata.",
        "tags": [
          "Artifact"
        ]
      },
      "get": {
        "consumes": [],
        "description": "Get Artifact metadata for a specific Id.",
        "operationId": "Artifacts_Get",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/resourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/workspaceNameParameter"
          },
          {
            "description": "The origin of the Artifact.",
            "in": "path",
            "name": "origin",
            "required": true,
            "type": "string"
          },
          {
            "description": "The container name.",
            "in": "path",
            "name": "container",
            "required": true,
            "type": "string"
          },
          {
            "description": "The Artifact Path.",
            "in": "query",
            "name": "path",
            "required": true,
            "type": "string"
          }
        ],
        "produces": [
          "application/json"
        ],
        "responses": {
          "200": {
            "description": "The details of the Artifact are returned successfully.",
            "schema": {
              "$ref": "#/definitions/Artifact"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "summary": "Get Artifact metadata by Id.",
        "tags": [
          "Artifact"
        ]
      }
    },
    "/artifact/v2.0/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/artifacts/{origin}/{container}/prefix/contentinfo": {
      "get": {
        "consumes": [],
        "description": "Get shared access signature for an Artifact in specific path.",
        "operationId": "Artifacts_ListSasByPrefix",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/resourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/workspaceNameParameter"
          },
          {
            "description": "The origin of the Artifact.",
            "in": "path",
            "name": "origin",
            "required": true,
            "type": "string"
          },
          {
            "description": "The container name.",
            "in": "path",
            "name": "container",
            "required": true,
            "type": "string"
          },
          {
            "description": "The Artifact Path.",
            "in": "query",
            "name": "path",
            "required": false,
            "type": "string"
          },
          {
            "description": "The continuation token.",
            "in": "query",
            "name": "continuationToken",
            "required": false,
            "type": "string"
          }
        ],
        "produces": [
          "application/json"
        ],
        "responses": {
          "200": {
            "description": "The Artifact writable shared access signature is returned successfully.",
            "schema": {
              "$ref": "#/definitions/PaginatedArtifactContentInformationList"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "summary": "Get shared access signature for an Artifact",
        "tags": [
          "Artifact"
        ],
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/artifact/v2.0/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/artifacts/{origin}/{container}/prefix/contentinfo/storageuri": {
      "get": {
        "consumes": [],
        "description": "Get storage Uri for Artifacts in a specific path.",
        "operationId": "Artifacts_ListStorageUriByPrefix",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/resourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/workspaceNameParameter"
          },
          {
            "description": "The origin of the Artifact.",
            "in": "path",
            "name": "origin",
            "required": true,
            "type": "string"
          },
          {
            "description": "The container name.",
            "in": "path",
            "name": "container",
            "required": true,
            "type": "string"
          },
          {
            "description": "The Artifact Path.",
            "in": "query",
            "name": "path",
            "required": false,
            "type": "string"
          },
          {
            "description": "The continuation token.",
            "in": "query",
            "name": "continuationToken",
            "required": false,
            "type": "string"
          }
        ],
        "produces": [
          "application/json"
        ],
        "responses": {
          "200": {
            "description": "The Artifact storage uri is returned successfully.",
            "schema": {
              "$ref": "#/definitions/PaginatedArtifactContentInformationList"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "summary": "Get storage Uri for Artifacts in a path.",
        "tags": [
          "Artifact"
        ],
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/artifact/v2.0/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/artifacts/{origin}/{container}/write": {
      "get": {
        "consumes": [],
        "description": "Get writable shared access signature for a specific Artifact.",
        "operationId": "Artifacts_GetSas",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/resourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/workspaceNameParameter"
          },
          {
            "description": "The origin of the Artifact.",
            "in": "path",
            "name": "origin",
            "required": true,
            "type": "string"
          },
          {
            "description": "The container name.",
            "in": "path",
            "name": "container",
            "required": true,
            "type": "string"
          },
          {
            "description": "The Artifact Path.",
            "in": "query",
            "name": "path",
            "required": false,
            "type": "string"
          }
        ],
        "produces": [
          "application/json"
        ],
        "responses": {
          "200": {
            "description": "The Artifact writable shared access signature is returned successfully.",
            "schema": {
              "$ref": "#/definitions/ArtifactContentInformation"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorResponse"
            }
          }
        },
        "summary": "Get writable shared access signature for Artifact.",
        "tags": [
          "Artifact"
        ]
      }
    }
  },
  "definitions": {
    "Artifact": {
      "description": "Details of an Artifact.",
      "properties": {
        "artifactId": {
          "description": "The identifier of an Artifact. Format of ArtifactId - {Origin}/{Container}/{Path}.",
          "type": "string"
        },
        "container": {
          "description": "The name of container. Artifacts can be grouped by container.",
          "type": "string"
        },
        "createdTime": {
          "description": "The Date and Time at which the Artifact is created. The DateTime is in UTC.",
          "format": "date-time",
          "readOnly": true,
          "type": "string"
        },
        "dataPath": {
          "$ref": "#/definitions/DataPath"
        },
        "etag": {
          "description": "The Etag of the Artifact.",
          "readOnly": true,
          "type": "string"
        },
        "origin": {
          "description": "The origin of the Artifact creation request. Available origins are 'ExperimentRun', 'LocalUpload', 'WebUpload', 'Dataset' and 'Unknown'.",
          "type": "string"
        },
        "path": {
          "description": "The path to the Artifact in a container.",
          "type": "string"
        }
      },
      "required": [
        "origin",
        "container",
        "path"
      ],
      "type": "object"
    },
    "ArtifactContainerSas": {
      "description": "Details of the Artifact Container's shared access signature.",
      "properties": {
        "artifactPrefix": {
          "description": "The Prefix to the Artifact in the Blob.",
          "type": "string"
        },
        "containerSas": {
          "description": "The shared access signature of the Container.",
          "type": "string"
        },
        "containerUri": {
          "description": "The URI of the Container.",
          "type": "string"
        },
        "prefix": {
          "description": "The Prefix to the Blobs in the Container.",
          "type": "string"
        }
      },
      "required": [
        "containerSas",
        "containerUri"
      ],
      "type": "object"
    },
    "ArtifactContentInformation": {
      "description": "Details of an Artifact Content Information.",
      "properties": {
        "container": {
          "description": "The name of container. Artifacts can be grouped by container.",
          "type": "string"
        },
        "contentUri": {
          "description": "The URI of the content.",
          "type": "string"
        },
        "origin": {
          "description": "The origin of the Artifact creation request. Available origins are 'ExperimentRun', 'LocalUpload', 'WebUpload', 'Dataset', 'ComputeRecord', 'Metric', and 'Unknown'.",
          "type": "string"
        },
        "path": {
          "description": "The path to the Artifact in a container.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ArtifactIdList": {
      "description": "Contains list of Artifact Ids.",
      "properties": {
        "artifactIds": {
          "description": "List of Artifacts Ids.",
          "items": {
            "type": "string"
          },
          "type": "array",
          "uniqueItems": false
        }
      },
      "required": [
        "artifactIds"
      ],
      "type": "object"
    },
    "ArtifactPath": {
      "description": "Details of an Artifact Path.",
      "properties": {
        "path": {
          "description": "The path to the Artifact in a container.",
          "type": "string"
        }
      },
      "required": [
        "path"
      ],
      "type": "object"
    },
    "ArtifactPathList": {
      "description": "Contains list of Artifact Paths.",
      "properties": {
        "paths": {
          "description": "List of Artifact Paths.",
          "items": {
            "$ref": "#/definitions/ArtifactPath"
          },
          "type": "array",
          "uniqueItems": false
        }
      },
      "required": [
        "paths"
      ],
      "type": "object"
    },
    "BatchArtifactContentInformationResult": {
      "description": "Results of the Batch Artifact Content Information request.",
      "properties": {
        "artifactContentInformation": {
          "additionalProperties": {
            "$ref": "#/definitions/ArtifactContentInformation"
          },
          "description": "Artifact Content Information details of the Artifact Ids requested.",
          "type": "object"
        },
        "artifacts": {
          "additionalProperties": {
            "$ref": "#/definitions/Artifact"
          },
          "description": "Artifact details of the Artifact Ids requested.",
          "type": "object"
        },
        "errors": {
          "additionalProperties": {
            "$ref": "#/definitions/ErrorResponse"
          },
          "description": "Errors occurred while fetching the requested Artifact Ids.",
          "type": "object"
        }
      },
      "type": "object"
    },
    "DataPath": {
      "properties": {
        "dataStoreName": {
          "type": "string"
        },
        "relativePath": {
          "type": "string"
        },
        "sqlDataPath": {
          "$ref": "#/definitions/SqlDataPath"
        }
      },
      "type": "object"
    },
    "ErrorDetails": {
      "description": "The error details.",
      "properties": {
        "code": {
          "description": "The error code.",
          "type": "string"
        },
        "message": {
          "description": "The error message.",
          "type": "string"
        },
        "target": {
          "description": "The target of the error (e.g., the name of the property in error).",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ErrorResponse": {
      "description": "The error response.",
      "properties": {
        "correlation": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "Dictionary containing correlation details for the error.",
          "type": "object"
        },
        "environment": {
          "description": "The hosting environment.",
          "type": "string"
        },
        "error": {
          "$ref": "#/definitions/RootError",
          "description": "The top level error that occurred."
        },
        "location": {
          "description": "The Azure region.",
          "type": "string"
        },
        "time": {
          "description": "The time in UTC.",
          "format": "date-time",
          "type": "string"
        }
      },
      "type": "object"
    },
    "InnerErrorResponse": {
      "description": "A nested structure of errors.",
      "properties": {
        "code": {
          "description": "The error code.",
          "type": "string"
        },
        "innerError": {
          "$ref": "#/definitions/InnerErrorResponse",
          "description": "A nested list of inner errors. When evaluating errors, clients MUST traverse through all of the nested “innerErrors” and choose the deepest one that they understand."
        }
      },
      "type": "object"
    },
    "PaginatedArtifactContentInformationList": {
      "description": "A paginated list of ArtifactContentInformations.",
      "properties": {
        "continuationToken": {
          "description": "The token used in retrieving the next page.  If null, there are no additional pages.",
          "type": "string"
        },
        "nextLink": {
          "description": "The link to the next page constructed using the continuationToken.  If null, there are no additional pages.",
          "type": "string"
        },
        "value": {
          "description": "An array of objects of type ArtifactContentInformation.",
          "items": {
            "$ref": "#/definitions/ArtifactContentInformation"
          },
          "type": "array",
          "uniqueItems": false
        }
      },
      "type": "object"
    },
    "PaginatedArtifactList": {
      "description": "A paginated list of Artifacts.",
      "properties": {
        "continuationToken": {
          "description": "The token used in retrieving the next page.  If null, there are no additional pages.",
          "type": "string"
        },
        "nextLink": {
          "description": "The link to the next page constructed using the continuationToken.  If null, there are no additional pages.",
          "type": "string"
        },
        "value": {
          "description": "An array of objects of type Artifact.",
          "items": {
            "$ref": "#/definitions/Artifact"
          },
          "type": "array",
          "uniqueItems": false
        }
      },
      "type": "object"
    },
    "RootError": {
      "description": "The root error.",
      "properties": {
        "code": {
          "description": "The service-defined error code. Supported error codes: ServiceError, UserError, ValidationError, AzureStorageError, TransientError, RequestThrottled.",
          "type": "string"
        },
        "details": {
          "description": "The related errors that occurred during the request.",
          "items": {
            "$ref": "#/definitions/ErrorDetails"
          },
          "type": "array",
          "uniqueItems": false
        },
        "innerError": {
          "$ref": "#/definitions/InnerErrorResponse",
          "description": "A nested list of inner errors. When evaluating errors, clients MUST traverse through all of the nested “innerErrors” and choose the deepest one that they understand."
        },
        "message": {
          "description": "A human-readable representation of the error.",
          "type": "string"
        },
        "target": {
          "description": "The target of the error (e.g., the name of the property in error).",
          "type": "string"
        }
      },
      "type": "object"
    },
    "SqlDataPath": {
      "properties": {
        "sqlQuery": {
          "type": "string"
        },
        "sqlStoredProcedureName": {
          "type": "string"
        },
        "sqlStoredProcedureParams": {
          "items": {
            "$ref": "#/definitions/StoredProcedureParameter"
          },
          "type": "array",
          "uniqueItems": false
        },
        "sqlTableName": {
          "type": "string"
        }
      },
      "type": "object"
    },
    "StoredProcedureParameter": {
      "properties": {
        "name": {
          "type": "string"
        },
        "type": {
          "enum": [
            "String",
            "Int",
            "Decimal",
            "Guid",
            "Boolean",
            "Date"
          ],
          "type": "string",
          "x-ms-enum": {
            "modelAsString": false,
            "name": "StoredProcedureParameterType"
          }
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object"
    }
  }
}