{ "openapi": "3.0.1", "info": { "title": "Data Platform Configuration Service API", "description": "Below are all the available APIs you can call to interact with Data Platform Configuration Service API v2", "termsOfService": "https://d-vwacv-c0e-apim-portal.vwcloud.org/terms", "contact": { "name": "VWAC", "url": "https://d-vwacv-c0e-apim-portal.vwcloud.org/", "email": "vwac-dataplatform-dev@vw.com" }, "license": { "name": "Use under Volkswagen Automotive Cloud", "url": "https://example.com/license" }, "version": "v2" }, "paths": { "/api/v2/anonymizedmethods": { "post": { "tags": [ "AnonymizedMethod" ], "summary": "Creates an AnonymizedMethod", "description": "Creates an AnonymizedMethod with the given name and description in the specified department.", "requestBody": { "description": "The AnonymizedMethod to create.", "content": { "application/json-patch+json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.AnonymizedMethod.AnonymizedMethodCreateRequestV2" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.AnonymizedMethod.AnonymizedMethodCreateRequestV2" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.AnonymizedMethod.AnonymizedMethodCreateRequestV2" } }, "application/*+json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.AnonymizedMethod.AnonymizedMethodCreateRequestV2" } } } }, "responses": { "200": { "description": "Created AnonymizedMethod object details.", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.AnonymizedMethodDocumentResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.AnonymizedMethodDocumentResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.AnonymizedMethodDocumentResponse" } } } }, "409": { "description": "The AnonymizedMethod name already exists.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/anonymizedmethods/departmentId/{departmentId}": { "get": { "tags": [ "AnonymizedMethod" ], "summary": "Gets all AnonymizedMethods in a specific Department", "description": "Gets a list of all AnonymizedMethods in the Department with the given ID.", "parameters": [ { "name": "departmentId", "in": "path", "description": "ID of the Department to search.", "required": true, "schema": { "type": "string" }, "example": "Department-{GUID}" } ], "responses": { "200": { "description": "Get all AnonymizedMethod object details by DepartmentId.", "content": { "text/plain": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.AnonymizedMethodDocumentResponse" } } }, "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.AnonymizedMethodDocumentResponse" } } }, "text/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.AnonymizedMethodDocumentResponse" } } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "404": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/anonymizedmethods/{id}": { "get": { "tags": [ "AnonymizedMethod" ], "summary": "Gets an AnonymizedMethod by ID", "description": "Gets an AnonymizedMethod by its ID.", "parameters": [ { "name": "id", "in": "path", "description": "ID of the AnonymizedMethod.", "required": true, "schema": { "type": "string" }, "example": "{GUID}" } ], "responses": { "200": { "description": "Get AnonymizedMethod by Id.", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.AnonymizedMethodDocumentResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.AnonymizedMethodDocumentResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.AnonymizedMethodDocumentResponse" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/azureresourcetemplates": { "get": { "tags": [ "AzureResourceTemplate" ], "summary": "Gets list of all Azure Resource Templates.", "description": "Gets list of all available Azure Resource Templates which can be used for Workbench provisioning.", "responses": { "200": { "description": "Gets list of all Azure Resource Templates.", "content": { "text/plain": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.AzureResourceTemplateResponse" } } }, "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.AzureResourceTemplateResponse" } } }, "text/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.AzureResourceTemplateResponse" } } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/azureresourcetemplates/{resourceName}": { "get": { "tags": [ "AzureResourceTemplate" ], "summary": "Gets specific Azure Resource Template(s) by its name.", "description": "Gets detailed information about specific Azure Resource Template(s) by its name.", "parameters": [ { "name": "resourceName", "in": "path", "description": "Name of the DataPlatform Azure Resource: Workbench, StreamingHost, etc.", "required": true, "schema": { "type": "string" }, "example": "Workbench-{GUID}" } ], "responses": { "200": { "description": "Gets specific Azure Resource Template by its name.", "content": { "text/plain": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.AzureResourceTemplateResponse" } } }, "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.AzureResourceTemplateResponse" } } }, "text/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.AzureResourceTemplateResponse" } } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/batchPipeline/datafactory/{id}": { "get": { "tags": [ "BatchPipeline" ], "summary": "Get a specific data factory in the system.", "parameters": [ { "name": "id", "in": "path", "description": "The data factory id to lookup.", "required": true, "schema": { "type": "string" }, "example": "BatchAdf-{GUID}" } ], "responses": { "200": { "description": "The response will contain the data factory requested.", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.BatchAdfResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.BatchAdfResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.BatchAdfResponse" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "404": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/batchPipeline/datafactory": { "post": { "tags": [ "BatchPipeline" ], "summary": "Create a new data factory in the system.", "requestBody": { "description": "The batch ADF to create.", "content": { "application/json-patch+json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.BatchAdfRequest" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.BatchAdfRequest" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.BatchAdfRequest" } }, "application/*+json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.BatchAdfRequest" } } } }, "responses": { "200": { "description": "Created data factory object details.", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse" } } } }, "409": { "description": "The data factory name already exists.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/batchPipeline/datafactory/request/{id}/status": { "get": { "tags": [ "BatchPipeline" ], "summary": "Get the RequestJobStatus value of requested data factory id.", "parameters": [ { "name": "id", "in": "path", "description": "id of the requested data factory job.", "required": true, "schema": { "type": "string" }, "example": "{GUID}" } ], "responses": { "200": { "description": "The response will contain the job status for data factory Request Object: {id}.", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "404": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/batchPipeline/pipeline/{id}": { "get": { "tags": [ "BatchPipeline" ], "summary": "Get a specific batch pipeline in the system.", "parameters": [ { "name": "id", "in": "path", "description": "The batch pipeline to lookup.", "required": true, "schema": { "type": "string" }, "example": "ADF-batch-{GUID}" } ], "responses": { "200": { "description": "The response will contain the batch pipeline requested.", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.BatchPipelineResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.BatchPipelineResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.BatchPipelineResponse" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "404": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/batchPipeline/pipeline/request/{id}/status": { "get": { "tags": [ "BatchPipeline" ], "summary": "Get the RequestJobStatus value of requested pipeline id.", "parameters": [ { "name": "id", "in": "path", "description": "id of the requested pipeline job.", "required": true, "schema": { "type": "string" }, "example": "{GUID}" } ], "responses": { "200": { "description": "The response will contain the job status for pipeline Request Object: {id}.", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "404": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/batchPipeline/pipeline": { "post": { "tags": [ "BatchPipeline" ], "summary": "Create a new batch pipeline.", "requestBody": { "description": "The Batch Pipeline to create.", "content": { "application/json-patch+json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.BatchPipelineRequest" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.BatchPipelineRequest" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.BatchPipelineRequest" } }, "application/*+json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.BatchPipelineRequest" } } } }, "responses": { "200": { "description": "Batch Pipeline creation request status details", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse" } } } }, "409": { "description": "The batch pipeline name already exists.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/batchPipeline/AuthenticatePipelineRun": { "post": { "tags": [ "BatchPipeline" ], "summary": "Authenticate a pipeline run.", "requestBody": { "description": "The authenticate pipeline run request.", "content": { "application/json-patch+json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.AuthenticatePipelineRunRequest" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.AuthenticatePipelineRunRequest" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.AuthenticatePipelineRunRequest" } }, "application/*+json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.AuthenticatePipelineRunRequest" } } } }, "responses": { "200": { "description": "Returns whether the authentication succeeded and more details if it failed.", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.AuthenticatePipelineRunResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.AuthenticatePipelineRunResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.AuthenticatePipelineRunResponse" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/dataplatformclaims": { "post": { "tags": [ "DataPlatformClaim" ], "summary": "Creates or updates a Claim.", "description": "Creates or updates a new Claim.", "requestBody": { "description": "Claim request.", "content": { "application/json-patch+json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.ClaimRequest" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.ClaimRequest" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.ClaimRequest" } }, "application/*+json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.ClaimRequest" } } } }, "responses": { "200": { "description": "Claim successfully created.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "409": { "description": "The claim already exists.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "404": { "description": "UserId or VehicleId not found.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/dataplatformclaims/userId/{userId}/vehicleId/{vehicleId}": { "get": { "tags": [ "DataPlatformClaim" ], "summary": "Gets a list of all claims from userId and vehicleId.", "description": "Gets a list of all claims from userId and vehicleId.", "parameters": [ { "name": "userId", "in": "path", "description": "UserId obtained during user creation.", "required": true, "schema": { "type": "string" }, "example": "{GUID}" }, { "name": "vehicleId", "in": "path", "description": "VehicleId obtained during vehicle registration.", "required": true, "schema": { "type": "string" }, "example": "{GUID}" } ], "responses": { "200": { "description": "Response will contain claimlist.", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.Controllers.V2.ClaimResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.Controllers.V2.ClaimResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.Controllers.V2.ClaimResponse" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "404": { "description": "Claims were not found for the given userId and vehicleId.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/dataplatformclaims/userId/{userId}": { "get": { "tags": [ "DataPlatformClaim" ], "summary": "Gets a list of all claims from userId.", "description": "Gets a list of claims for the user with the given ID.", "parameters": [ { "name": "userId", "in": "path", "description": "UserId obtained during user creation.", "required": true, "schema": { "type": "string" }, "example": "{GUID}" } ], "responses": { "200": { "description": "Response will contain claimlist.", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.Controllers.V2.ClaimResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.Controllers.V2.ClaimResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.Controllers.V2.ClaimResponse" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "404": { "description": "Claims were not found for the given userId.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/dataplatformclaims/user/{userId}": { "delete": { "tags": [ "DataPlatformClaim" ], "summary": "Deletes Claims owned by userId.", "description": "Deletes all Claims owned by the user with the given ID.", "parameters": [ { "name": "userId", "in": "path", "description": "ID of the user to deauthorize.", "required": true, "schema": { "type": "string" }, "example": "{GUID}" } ], "responses": { "200": { "description": "Claims successfully deleted.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "404": { "description": "Claims were not found for the given userId.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/dataplatformclaims/user/{userId}/vehicle/{vehicleId}": { "delete": { "tags": [ "DataPlatformClaim" ], "summary": "Deletes userId's claims for vehicleId.", "description": "Deletes all of a user's claims for a specific vehicle.", "parameters": [ { "name": "userId", "in": "path", "description": "ID of the user to deauthorize.", "required": true, "schema": { "type": "string" }, "example": "{GUID}" }, { "name": "vehicleId", "in": "path", "description": "ID of the vehicle.", "required": true, "schema": { "type": "string" }, "example": "{GUID}" } ], "responses": { "200": { "description": "Claims successfully deleted.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "404": { "description": "Claims were not found for the given userId.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/dataplatformclaims/user/{userId}/usecase/{usecaseId}": { "delete": { "tags": [ "DataPlatformClaim" ], "summary": "Deletes userId's Claims for usecaseId.", "description": "Deletes a user's Claims for a specific UseCase.", "parameters": [ { "name": "userId", "in": "path", "description": "ID of the user to deauthorize.", "required": true, "schema": { "type": "string" }, "example": "{GUID}" }, { "name": "usecaseId", "in": "path", "description": "ID of the UseCase.", "required": true, "schema": { "type": "string" }, "example": "UseCase-{GUID}" }, { "name": "entityId", "in": "query", "description": "Unique entity ID obtained when you create a UseCase. Can be DataPlatformStorage, DataPlatformProcessing, or null.", "schema": { "type": "string" }, "example": "DataPlatformStorage" }, { "name": "schemaIds", "in": "query", "description": "Unique storage or processing schema IDs obtained when you create a Schema.", "schema": { "type": "array", "items": { "type": "string" } } } ], "responses": { "200": { "description": "Claims successfully deleted.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "404": { "description": "Claims were not found for the given userId.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/dataplatformclaims/user/{userId}/vehicle/{vehicleId}/usecase/{usecaseId}": { "delete": { "tags": [ "DataPlatformClaim" ], "summary": "Deletes userId's Claim for usecaseId of a vehicleId.", "description": "Deletes all of a user's Claims for a specific UseCase of a vehicle.", "parameters": [ { "name": "userId", "in": "path", "description": "ID of the user to deauthorize.", "required": true, "schema": { "type": "string" }, "example": "{GUID}" }, { "name": "vehicleId", "in": "path", "description": "ID of the vehicle.", "required": true, "schema": { "type": "string" }, "example": "{GUID}" }, { "name": "usecaseId", "in": "path", "description": "ID of the UseCase", "required": true, "schema": { "type": "string" }, "example": "UseCase-{GUID}" }, { "name": "entityId", "in": "query", "description": "Unique entity ID obtained when you create a UseCase. Can be DataPlatformStorage, DataPlatformProcessing, or null.", "schema": { "type": "string" }, "example": "DataPlatformStorage" }, { "name": "schemaIds", "in": "query", "description": "Unique storage or processing schema IDs obtained when you create a Schema.", "schema": { "type": "array", "items": { "type": "string" } } } ], "responses": { "200": { "description": "Claims successfully deleted.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "404": { "description": "Claims were not found for the given userId.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/department/{id}": { "get": { "tags": [ "Department" ], "summary": "Gets a department by ID", "description": "Gets a department by ID.", "parameters": [ { "name": "id", "in": "path", "description": "ID of the department to find.", "required": true, "schema": { "type": "string" }, "example": "Department-{GUID}" } ], "responses": { "200": { "description": "The response will contain the department requested.", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.DepartmentResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.DepartmentResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.DepartmentResponse" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "404": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/department": { "get": { "tags": [ "Department" ], "summary": "Get list of departments by name or primary owner", "description": "Lists departments that match the input query parameters (department name and/or primary owner).", "parameters": [ { "name": "name", "in": "query", "description": "Filter to include departments by name", "schema": { "type": "string", "default": "" } }, { "name": "primaryOwner", "in": "query", "description": "Filter to include only departments owned by a specific user", "schema": { "type": "string", "default": "" } }, { "name": "responseContinuation", "in": "query", "description": "Token used for paging.", "schema": { "type": "string", "default": "" } } ], "responses": { "200": { "description": "The response will contain departments List.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "404": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } }, "post": { "tags": [ "Department" ], "summary": "Creates a new department", "description": "Creates a new Department.", "requestBody": { "description": "Department to create.", "content": { "application/json-patch+json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.DepartmentRequest" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.DepartmentRequest" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.DepartmentRequest" } }, "application/*+json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.DepartmentRequest" } } } }, "responses": { "200": { "description": "Created department object details.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "409": { "description": "The department name already exists.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/schemas/{id}": { "get": { "tags": [ "Schema" ], "summary": "Gets a Schema by ID.", "description": "Gets the Schema with the given ID.", "parameters": [ { "name": "id", "in": "path", "description": "ID of the schema.", "required": true, "schema": { "type": "string" }, "example": "Schema-{GUID}" } ], "responses": { "200": { "description": "The response will contain the schema requested.", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.SchemaDocumentResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.SchemaDocumentResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.SchemaDocumentResponse" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "404": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/schemas/departmentId/{departmentId}": { "get": { "tags": [ "Schema" ], "summary": "Gets a list of Schemas by departmentId", "description": "Gets a list of the Schemas in the Department with the given ID.", "parameters": [ { "name": "departmentId", "in": "path", "description": "ID of the department to search.", "required": true, "schema": { "type": "string" }, "example": "Department-{GUID}" } ], "responses": { "200": { "description": "The response will contain Schemas List.", "content": { "text/plain": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.SchemaDocumentResponse" } } }, "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.SchemaDocumentResponse" } } }, "text/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.SchemaDocumentResponse" } } } } }, "404": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/schemas": { "post": { "tags": [ "Schema" ], "summary": "Creates a new schema", "description": "Creates a new schema:\r\n \r\n POST sample request:\r\n {\r\n \"name\": \"Schema.VWAC.Example.07122022\",\r\n \"version\": 202009,\r\n \"format\": \"json\",\r\n \"departmentId\": \"Department-{GUID}\",\r\n \"category\": \"personal\",\r\n \"structure\": {\r\n \"$schema\": \"http://json-schema.org/draft-07/schema#\",\r\n \"type\": \"array\",\r\n \"title\": \"Test Schema\",\r\n \"items\": {\r\n \"type\": \"object\",\r\n \"required\": [\r\n \"id\",\r\n \"value\"\r\n ]\r\n }\r\n }\r\n }", "requestBody": { "description": "Schema to create.", "content": { "application/json-patch+json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.SchemaRequestV2" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.SchemaRequestV2" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.SchemaRequestV2" } }, "application/*+json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.SchemaRequestV2" } } } }, "responses": { "200": { "description": "Schema creation request status details.", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse" } } } }, "409": { "description": "The schema name already exists.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/schemas/request/{id}/status": { "get": { "tags": [ "Schema" ], "summary": "Gets status of SchemaRequest job.", "description": "Gets status of the SchemaRequest job of ID.", "parameters": [ { "name": "id", "in": "path", "description": "ID of the SchemaRequest job .", "required": true, "schema": { "type": "string" }, "example": "{GUID}" } ], "responses": { "200": { "description": "The response will contain the job status for Schema Request Object: {id}.", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "404": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/schemas/{id}/deactivate": { "patch": { "tags": [ "Schema" ], "summary": "Deactivates a Schema", "description": "Deactivates a schema with the given ID.", "parameters": [ { "name": "id", "in": "path", "description": "ID of the schema.", "required": true, "schema": { "type": "string" }, "example": "Schema-{GUID}" } ], "responses": { "200": { "description": "The response will contain the schema requested.", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "404": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/pipeline/streaming/StreamingPipelineId/{id}/connectionInfo": { "get": { "tags": [ "StreamingPipeline" ], "summary": "Gets StreamingPipeline connection information by ID", "description": "Gets StreamingPipeline connection information by ID.", "parameters": [ { "name": "id", "in": "path", "description": "ID of the StreamingPipeline.", "required": true, "schema": { "type": "string" }, "example": "StreamingPipeline-{GUID}" } ], "responses": { "200": { "description": "Streaming Pipeline connection details.", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.StreamingPipelineConnectionInfo" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.StreamingPipelineConnectionInfo" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.StreamingPipelineConnectionInfo" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "404": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/pipeline/streaming/StreamingPipelineId/{id}": { "get": { "tags": [ "StreamingPipeline" ], "summary": "Gets StreamingPipeline information by ID", "description": "Gets StreamingPipeline information by ID.", "parameters": [ { "name": "id", "in": "path", "description": "ID of the StreamingPipeline.", "required": true, "schema": { "type": "string" }, "example": "StreamingPipeline-{GUID}" } ], "responses": { "200": { "description": "Streaming Pipeline details.", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.StreamingPipelineResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.StreamingPipelineResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.StreamingPipelineResponse" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "404": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/pipeline/streaming/StreamingPipelineId/{id}/StreamingHost": { "get": { "tags": [ "StreamingPipeline" ], "summary": "Gets StreamingHost information by StreamingPipeline ID", "description": "Gets StreamingHost information by StreamingPipeline ID.", "parameters": [ { "name": "id", "in": "path", "description": "ID of the StreamingPipeline ID.", "required": true, "schema": { "type": "string" }, "example": "StreamingPipeline-{GUID}" } ], "responses": { "200": { "description": "StreamingHost details.", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.StreamingHostResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.StreamingHostResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.StreamingHostResponse" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "404": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/pipeline/streaming": { "post": { "tags": [ "StreamingPipeline" ], "summary": "Registers a new Streaming Pipeline", "description": "Registers a new Streaming Pipeline.", "requestBody": { "description": "StreamingPipeline to register.", "content": { "application/json-patch+json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.StreamingPipelineRequestV2" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.StreamingPipelineRequestV2" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.StreamingPipelineRequestV2" } }, "application/*+json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.StreamingPipelineRequestV2" } } } }, "responses": { "200": { "description": "Streaming Pipeline registration request status details", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse" } } } }, "409": { "description": "The streaming pipeline name already exists.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/pipeline/streaming/{id}": { "patch": { "tags": [ "StreamingPipeline" ], "summary": "Updates a StreamingPipeline", "description": "Updates a StreamingPipeline.", "parameters": [ { "name": "id", "in": "path", "description": "ID of the StreamingPipeline.", "required": true, "schema": { "type": "string" }, "example": "StreamingPipeline-{GUID}" } ], "requestBody": { "description": "StreamingPipeline configuration to update.", "content": { "application/json-patch+json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.StreamingPipelineUpdateRequest" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.StreamingPipelineUpdateRequest" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.StreamingPipelineUpdateRequest" } }, "application/*+json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.StreamingPipelineUpdateRequest" } } } }, "responses": { "200": { "description": "Streaming Pipeline creation request status details", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.UseCaseDocumentResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.UseCaseDocumentResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.UseCaseDocumentResponse" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/pipeline/streaming/PipelineChannel/SchemaId/{schemaId}/ConnectionInfo": { "get": { "tags": [ "StreamingPipeline" ], "summary": "Gets all EventHubConnectionInfo by Schema ID", "description": "Gets all EventHubConnectionInfo by Schema ID.", "parameters": [ { "name": "schemaId", "in": "path", "description": "ID of the Schema to get the list of EventHubConnectionInfo.", "required": true, "schema": { "type": "string" }, "example": "Schema-{GUID}" } ], "responses": { "200": { "description": "List of connection strings for all pipeline channels", "content": { "text/plain": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.UseCasePipelinesConnectionInfo" } } }, "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.UseCasePipelinesConnectionInfo" } } }, "text/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.UseCasePipelinesConnectionInfo" } } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "404": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/pipeline/streaming/request/{id}/status": { "get": { "tags": [ "StreamingPipeline" ], "summary": "Gets status of StreamingPipelineRequest job.", "description": "Gets status of StreamingPipelineRequest job of ID.", "parameters": [ { "name": "id", "in": "path", "description": "ID of the StreamingPipelineRequest job.", "required": true, "schema": { "type": "string" }, "example": "{GUID}" } ], "responses": { "200": { "description": "The response will contain the job status for StreamingPipeline Request Object: {id}.", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "404": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/usecases/{id}": { "get": { "tags": [ "UseCase" ], "summary": "Gets a UseCase by ID", "description": "Gets a UseCase by ID.", "parameters": [ { "name": "id", "in": "path", "description": "ID of the UseCase.", "required": true, "schema": { "type": "string" }, "example": "UseCase-{GUID}" } ], "responses": { "200": { "description": "The response will contain UseCases List.", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.UseCaseDocumentResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.UseCaseDocumentResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.UseCaseDocumentResponse" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "404": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } }, "patch": { "tags": [ "UseCase" ], "summary": "Updates a UseCase", "description": "Updates a UseCase.", "parameters": [ { "name": "id", "in": "path", "description": "ID of the UseCase.", "required": true, "schema": { "type": "string" }, "example": "UseCase-{GUID}" } ], "requestBody": { "description": "UseCase configuration to update.", "content": { "application/json-patch+json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.UseCaseUpdateRequest" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.UseCaseUpdateRequest" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.UseCaseUpdateRequest" } }, "application/*+json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.UseCaseUpdateRequest" } } } }, "responses": { "200": { "description": "Use Case creation request status details", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.UseCaseDocumentResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.UseCaseDocumentResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.UseCaseDocumentResponse" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/usecases/departmentId/{departmentId}": { "get": { "tags": [ "UseCase" ], "summary": "Gets a list of UseCases in a Department", "description": "Gets a list of UseCases in the Department with the given ID.", "parameters": [ { "name": "departmentId", "in": "path", "description": "ID of the Department to search.", "required": true, "schema": { "type": "string" }, "example": "Department-{GUID}" } ], "responses": { "200": { "description": "The response will contain UseCases List.", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.UseCaseDocumentResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.UseCaseDocumentResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.UseCaseDocumentResponse" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "404": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/usecases": { "post": { "tags": [ "UseCase" ], "summary": "Creates a UseCase", "description": "Creates a new UseCase.", "requestBody": { "description": "UseCase to create.", "content": { "application/json-patch+json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.UseCaseRequest" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.UseCaseRequest" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.UseCaseRequest" } }, "application/*+json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.UseCaseRequest" } } } }, "responses": { "200": { "description": "Use Case creation request status details", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse" } } } }, "409": { "description": "The use case name already exists.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/usecases/{id}/repositories/ConnectionInfo": { "get": { "tags": [ "UseCase" ], "summary": "Gets UseCase connection information", "description": "Gets UseCase connection information by its ID.", "parameters": [ { "name": "id", "in": "path", "description": "ID of the UseCase.", "required": true, "schema": { "type": "string" }, "example": "UseCase-{GUID}" } ], "responses": { "200": { "description": "UseCase connection information.", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.UseCaseConnectionInfo" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.UseCaseConnectionInfo" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.UseCaseConnectionInfo" } } } }, "404": { "description": "UseCase doesn't exist.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/usecases/request/{id}/status": { "get": { "tags": [ "UseCase" ], "summary": "Gets status of UseCaseRequest job.", "description": "Gets status of the UseCaseRequest job of ID.", "parameters": [ { "name": "id", "in": "path", "description": "ID of the UseCaseRequest job.", "required": true, "schema": { "type": "string" }, "example": "{GUID}" } ], "responses": { "200": { "description": "The response will contain the job status for UseCase Request Object: {id}.", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "404": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/usecases/SchemaId/{schemaId}/UseCasesIdInfo": { "get": { "tags": [ "UseCase" ], "summary": "Gets a list of active UseCaseIds associated with a SchemaId", "description": "Gets a list of active UseCaseIds associated with a SchemaId.", "parameters": [ { "name": "schemaId", "in": "path", "description": "ID of the Schema to lookup.", "required": true, "schema": { "type": "string" }, "example": "Schema-{GUID}" } ], "responses": { "200": { "description": "The response will contain the Active UseCaseId's associated with SchemaId.", "content": { "text/plain": { "schema": { "type": "array", "items": { "type": "string" } } }, "application/json": { "schema": { "type": "array", "items": { "type": "string" } } }, "text/json": { "schema": { "type": "array", "items": { "type": "string" } } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "404": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/usecases/UsecaseId/{usecaseid}/StagingRepositoryId": { "get": { "tags": [ "UseCase" ], "summary": "Gets the staging repository for the UseCase ID", "description": "Gets the staging repository for the UseCase ID.", "parameters": [ { "name": "usecaseid", "in": "path", "description": "ID of the UseCase.", "required": true, "schema": { "type": "string" }, "example": "UseCase-{GUID}" } ], "responses": { "200": { "description": "The response will contain Staging Repository Id.", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.UseCaseDocumentResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.UseCaseDocumentResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.UseCaseDocumentResponse" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "404": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/usecases/{usecaseid}": { "delete": { "tags": [ "UseCase" ], "summary": "Deletes a specific UseCase by ID", "description": "Deletes a specific UseCase by ID.", "parameters": [ { "name": "usecaseid", "in": "path", "description": "ID of the UseCase.", "required": true, "schema": { "type": "string" }, "example": "UseCase-{GUID}" } ], "responses": { "200": { "description": "The response will contain confirmation of the UseCase to be deleted.", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.UseCaseDocumentResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.UseCaseDocumentResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.UseCaseDocumentResponse" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "404": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/workbenches/{id}": { "get": { "tags": [ "Workbench" ], "summary": "Gets a Workbench document by its ID.", "description": "Gets Workbench document by its ID.", "operationId": "GetWorkbenchAsyncById", "parameters": [ { "name": "id", "in": "path", "description": "ID of the Workbench document to retrieve.", "required": true, "schema": { "type": "string" }, "example": "Workbench-{GUID}" } ], "responses": { "200": { "description": "The response will contain Workbench information.", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.WorkbenchResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.WorkbenchResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.WorkbenchResponse" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "404": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/workbenches": { "post": { "tags": [ "Workbench" ], "summary": "Creates Workbench by WorkbenchTemplate name.", "description": "Triggers the deployments for the Workbench components for the supplied WorkbenchTemplate name in the request and returns the Workbench provisioning RequestResponse object.", "requestBody": { "content": { "application/json-patch+json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.CreateWorkbenchRequest" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.CreateWorkbenchRequest" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.CreateWorkbenchRequest" } }, "application/*+json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.CreateWorkbenchRequest" } } } }, "responses": { "200": { "description": "Workbench RequestResponse object, containing \"id\" to track the deployment status of the Workbench components.", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/workbenches/request/{id}/status": { "get": { "tags": [ "Workbench" ], "summary": "Gets status of WorkbenchRequest job.", "description": "Gets status of the WorkbenchRequest job of ID.", "parameters": [ { "name": "id", "in": "path", "description": "ID of the WorkbenchRequest job.", "required": true, "schema": { "type": "string" }, "example": "{GUID}" } ], "responses": { "200": { "description": "Workbench RequestResponse object corresponding to {id}; lists the current deployment status of the Workbench components. Please note that \"dataPlatformObjectId\" corresponds to WorkbenchId.", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "404": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/workbenchtemplates": { "get": { "tags": [ "WorkbenchTemplate" ], "summary": "Gets a list of WorkbenchTemplate names.", "description": "Gets a list of WorkbenchTemplate names supported by Data Products.", "responses": { "200": { "description": "The response will contain a list of WorkbenchTemplate names which are supported by Data Products.", "content": { "text/plain": { "schema": { "type": "array", "items": { "type": "string" } } }, "application/json": { "schema": { "type": "array", "items": { "type": "string" } } }, "text/json": { "schema": { "type": "array", "items": { "type": "string" } } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } }, "/api/v2/workbenchtemplates/{templateName}": { "get": { "tags": [ "WorkbenchTemplate" ], "summary": "Gets WorkbenchTemplate configuration document by name.", "description": "Gets WorkbenchTemplate information (configuration document) such as status of the WorkbenchTemplate, permissionsScope, deployment properties, type, templatePath, propertiesPath and priority by name.", "parameters": [ { "name": "templateName", "in": "path", "description": "Name of the WorkbenchTemplate configuration document to retrieve. eg. UCSharpFunctionCosmosSQLDB, UHDISparkKafkaWithCosmosDbAKS, and lots of others.", "required": true, "schema": { "type": "string" }, "example": "UCSharpFunctionCosmosSQLDB" } ], "responses": { "200": { "description": "Response will contain WorkbenchTemplate configuration document.", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.WorkbenchTemplateResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.WorkbenchTemplateResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.WorkbenchTemplateResponse" } } } }, "400": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "404": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } }, "500": { "description": "Response body will include details of the exception.", "content": { "text/plain": { "schema": { "type": "string" } }, "application/json": { "schema": { "type": "string" } }, "text/json": { "schema": { "type": "string" } } } } } } } }, "components": { "schemas": { "Newtonsoft.Json.Schema.JSchema": { "type": "object", "properties": { "schemaVersion": { "type": "string", "description": "Gets or sets the $schema. This value will only be read from JSON and written to JSON if the Newtonsoft.Json.Schema.JSchema is the root schema.", "format": "uri", "nullable": true }, "valid": { "type": "boolean", "description": "Gets or sets a flag indicating whether this schema is {true} and always valid, or {false} and always invalid.", "nullable": true }, "reference": { "type": "string", "description": "Gets or sets the $ref. This property is used when reading or writing referenced schemas without resolving them.\r\nValidating JSON with a schema that has a not null Newtonsoft.Json.Schema.JSchema.Reference value will error.", "format": "uri", "nullable": true }, "id": { "type": "string", "description": "Gets or sets the schema ID.", "format": "uri", "nullable": true }, "type": { "$ref": "#/components/schemas/Newtonsoft.Json.Schema.JSchemaType" }, "default": { "description": "Represents an abstract JSON token.", "nullable": true }, "properties": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/Newtonsoft.Json.Schema.JSchema" }, "description": "Gets the object property Newtonsoft.Json.Schema.JSchemas.", "nullable": true, "readOnly": true }, "items": { "type": "array", "items": { "$ref": "#/components/schemas/Newtonsoft.Json.Schema.JSchema" }, "description": "Gets the array item Newtonsoft.Json.Schema.JSchemas.", "nullable": true, "readOnly": true }, "itemsPositionValidation": { "type": "boolean", "description": "Gets or sets a value indicating whether items in an array are validated using the Newtonsoft.Json.Schema.JSchema instance at their array position from Newtonsoft.Json.Schema.JSchema.Items." }, "required": { "type": "array", "items": { "type": "string" }, "description": "Gets the required object properties.", "nullable": true, "readOnly": true }, "allOf": { "type": "array", "items": { "$ref": "#/components/schemas/Newtonsoft.Json.Schema.JSchema" }, "description": "Gets the AllOf schemas.", "nullable": true, "readOnly": true }, "anyOf": { "type": "array", "items": { "$ref": "#/components/schemas/Newtonsoft.Json.Schema.JSchema" }, "description": "Gets the AnyOf schemas.", "nullable": true, "readOnly": true }, "oneOf": { "type": "array", "items": { "$ref": "#/components/schemas/Newtonsoft.Json.Schema.JSchema" }, "description": "Gets the OneOf schemas.", "nullable": true, "readOnly": true }, "if": { "$ref": "#/components/schemas/Newtonsoft.Json.Schema.JSchema" }, "then": { "$ref": "#/components/schemas/Newtonsoft.Json.Schema.JSchema" }, "else": { "$ref": "#/components/schemas/Newtonsoft.Json.Schema.JSchema" }, "not": { "$ref": "#/components/schemas/Newtonsoft.Json.Schema.JSchema" }, "contains": { "$ref": "#/components/schemas/Newtonsoft.Json.Schema.JSchema" }, "propertyNames": { "$ref": "#/components/schemas/Newtonsoft.Json.Schema.JSchema" }, "enum": { "type": "array", "items": { "description": "Represents an abstract JSON token." }, "description": "Gets the collection of valid enum values allowed.", "nullable": true, "readOnly": true }, "const": { "description": "Represents an abstract JSON token.", "nullable": true }, "uniqueItems": { "type": "boolean", "description": "Gets or sets a flag indicating whether the array items must be unique." }, "minimumLength": { "type": "integer", "description": "Gets or sets the minimum length of a string.", "format": "int64", "nullable": true }, "maximumLength": { "type": "integer", "description": "Gets or sets the maximum length of a string.", "format": "int64", "nullable": true }, "minimum": { "type": "number", "description": "Gets or sets the minimum value of a number.", "format": "double", "nullable": true }, "maximum": { "type": "number", "description": "Gets or sets the maximum value of a number.", "format": "double", "nullable": true }, "exclusiveMinimum": { "type": "boolean", "description": "Gets or sets a flag indicating whether the value can not equal the number defined by the \"minimum\" attribute." }, "exclusiveMaximum": { "type": "boolean", "description": "Gets or sets a flag indicating whether the value can not equal the number defined by the \"maximum\" attribute." }, "minimumItems": { "type": "integer", "description": "Gets or sets the minimum number of array items.", "format": "int64", "nullable": true }, "maximumItems": { "type": "integer", "description": "Gets or sets the maximum number of array items.", "format": "int64", "nullable": true }, "minimumProperties": { "type": "integer", "description": "Gets or sets the minimum number of object properties.", "format": "int64", "nullable": true }, "maximumProperties": { "type": "integer", "description": "Gets or sets the maximum number of object properties.", "format": "int64", "nullable": true }, "contentEncoding": { "type": "string", "description": "Gets or sets the content encoding of a string.", "nullable": true }, "contentMediaType": { "type": "string", "description": "Gets or sets the content media type of a string.", "nullable": true }, "writeOnly": { "type": "boolean", "description": "Gets or sets a value that indicates whether the data is write only.\r\nHas no no effect on validation.", "nullable": true }, "readOnly": { "type": "boolean", "description": "Gets or sets a value that indicates whether the data is read only.\r\nHas no no effect on validation.", "nullable": true }, "extensionData": { "type": "object", "additionalProperties": { "description": "Represents an abstract JSON token." }, "description": "Gets the extension data for the Newtonsoft.Json.Schema.JSchema.", "nullable": true, "readOnly": true }, "title": { "type": "string", "description": "Gets or sets the title of the schema.", "nullable": true }, "description": { "type": "string", "description": "Gets or sets the description of the schema.", "nullable": true }, "multipleOf": { "type": "number", "description": "Gets or sets the multiple of.", "format": "double", "nullable": true }, "pattern": { "type": "string", "description": "Gets or sets the pattern.", "nullable": true }, "dependencies": { "type": "object", "additionalProperties": { }, "description": "Gets the object property dependencies.", "nullable": true, "readOnly": true }, "additionalProperties": { "$ref": "#/components/schemas/Newtonsoft.Json.Schema.JSchema" }, "patternProperties": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/Newtonsoft.Json.Schema.JSchema" }, "description": "Gets the object pattern properties.", "nullable": true, "readOnly": true }, "allowAdditionalProperties": { "type": "boolean", "description": "Gets or sets a value indicating whether additional properties are allowed." }, "additionalItems": { "$ref": "#/components/schemas/Newtonsoft.Json.Schema.JSchema" }, "allowAdditionalItems": { "type": "boolean", "description": "Gets or sets a value indicating whether additional items are allowed." }, "format": { "type": "string", "description": "Gets or sets the format.", "nullable": true }, "validators": { "type": "array", "items": { "$ref": "#/components/schemas/Newtonsoft.Json.Schema.JsonValidator" }, "description": "Gets a Newtonsoft.Json.Schema.JsonValidator collection that will be used during validation.", "nullable": true, "readOnly": true } }, "additionalProperties": false, "description": "An in-memory representation of a JSON Schema." }, "Newtonsoft.Json.Schema.JSchemaType": { "enum": [ "None", "String", "Number", "Integer", "Boolean", "Object", "Array", "Null" ], "type": "string", "description": "The value types allowed by the Newtonsoft.Json.Schema.JSchema." }, "Newtonsoft.Json.Schema.JsonValidator": { "type": "object", "additionalProperties": false, "description": "Provides a base class for implementing a custom JSON validator." }, "VWAC.DataPlatform.ConfigurationService.Controllers.V2.ClaimResponse": { "type": "object", "properties": { "storageClaim": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.Internal.ClaimDocument" }, "processingClaim": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.Internal.ClaimDocument" } }, "additionalProperties": false, "description": "Representation of {Claim} response." }, "VWAC.DataPlatform.ConfigurationService.DataContracts.AnonymizedMethod.AnonymizedMethodCreateRequestV2": { "required": [ "departmentId", "description", "name" ], "type": "object", "properties": { "departmentId": { "type": "string", "description": "Gets or sets {department} that the AnonymizedMethod belongs to.", "example": "Department-{GUID}" }, "name": { "type": "string", "description": "Gets or sets {name} of the AnonymizedMethod provided by the VWAC Platform User.", "example": "my-anonymized-method-name" }, "description": { "type": "string", "description": "Gets or sets {description} of the AnonymizedMethod provided by the VWAC Platform User.", "example": "my-anonymized-method-description" } }, "additionalProperties": false }, "VWAC.DataPlatform.ConfigurationService.DataContracts.AnonymizedMethodDocumentResponse": { "required": [ "creationDate", "details", "id", "lastUpdateDate", "status", "type" ], "type": "object", "properties": { "id": { "type": "string", "description": "Gets or sets the Id of the Configuration document.", "example": "Schema-{GUID}" }, "type": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Constants+ConfigurationType" }, "status": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Constants+ConfigurationStatus" }, "details": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.AnonymizedMethodDocument" }, "creationDate": { "type": "string", "description": "Gets or sets the creation date of the Configuration document in CosmosDB.", "example": "2021-09-08T15:28:55.7946308Z" }, "lastUpdateDate": { "type": "string", "description": "Gets or sets the last update date of the Configuration document in CosmosDB.", "example": "2021-09-08T15:28:55.7946308Z" } }, "additionalProperties": false }, "VWAC.DataPlatform.ConfigurationService.DataContracts.AuthenticatePipelineRunRequest": { "required": [ "dataFactoryName", "orchestrationPipelineName", "orchestrationPipelineRunId", "resourceGroupName" ], "type": "object", "properties": { "resourceGroupName": { "type": "string", "description": "Gets or Sets the resource group name.", "example": "RG-Name" }, "dataFactoryName": { "type": "string", "description": "Gets or sets the data factory name.", "example": "my-datafactory-name" }, "orchestrationPipelineName": { "type": "string", "description": "Gets or sets the pipeline name.", "example": "my-orchestration-pipeline-name" }, "orchestrationPipelineRunId": { "type": "string", "description": "Gets or Sets OrchestrationPipelineRunId of the Batch Pipeline Instance.", "example": "{GUID}" }, "parameters": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Gets or sets pipeline run parameters.", "nullable": true, "example": { "additionalProp1": "additionalProp1Value", "additionalProp2": "additionalProp2Value" } } }, "additionalProperties": false, "description": "This Class defines the structure of the Batch ADF Json input." }, "VWAC.DataPlatform.ConfigurationService.DataContracts.AuthenticatePipelineRunResponse": { "required": [ "authenticated" ], "type": "object", "properties": { "authenticated": { "type": "boolean", "description": "Gets or sets a value indicating whether the pipeline run is authenticated." }, "message": { "type": "string", "description": "Gets or sets the message provides more details about authentication.", "nullable": true }, "runId": { "type": "string", "description": "Gets or sets the pipeline's run ID.", "nullable": true } }, "additionalProperties": false }, "VWAC.DataPlatform.ConfigurationService.DataContracts.AzureResourceTemplate": { "required": [ "category", "createdBy", "description", "isSubscriptionScope", "name", "priority", "propertiesPath", "templatePath", "type", "version" ], "type": "object", "properties": { "name": { "type": "string", "description": "Gets or Sets the name of the AzureResourceTemplate.", "example": "my-azureresourcetemplate-name" }, "description": { "type": "string", "description": "Gets or sets Description of the resource.", "example": "my-azureresourcetemplate-description" }, "category": { "type": "string", "description": "Gets or sets Category of the resource.", "example": "any-discretionary-category-value" }, "version": { "type": "string", "description": "Gets or sets Version of the resource.", "example": "any-discretionary-version-string" }, "createdBy": { "type": "string", "description": "Gets or sets CreatedBy of the resource.", "example": "Joe Smith" }, "type": { "type": "string", "description": "Gets or sets type of the resource to be created. Ex: ResourceGroup, VNet, SQL DB or Azure function.", "example": "ResourceGroup" }, "templatePath": { "type": "string", "description": "Gets or sets template file from the Blob store.", "example": "path_to_template_file" }, "propertiesPath": { "type": "string", "description": "Gets or sets properties file from the Blob store. This file contains the names of the resources.", "example": "path_to_properties_file" }, "priority": { "type": "integer", "description": "Gets or sets priority of the deployment. Lower number denotes higher priority. Deployment sequence of the resources depends on the priority.", "format": "int32", "example": 3 }, "isSubscriptionScope": { "type": "boolean", "description": "Gets or sets a value indicating whether the SubscriptionScope of the resource is the same subscription or not.\r\nTrue - represents that the resource has to be created in the same subscription.\r\nFalse - represents that the resource has to be created in a different subscription." } }, "additionalProperties": false, "description": "Representation of VWAC.DataPlatform.ConfigurationService.DataContracts.AzureResourceTemplate." }, "VWAC.DataPlatform.ConfigurationService.DataContracts.AzureResourceTemplateResponse": { "required": [ "creationDate", "details", "id", "lastUpdateDate", "status", "type" ], "type": "object", "properties": { "id": { "type": "string", "description": "Gets or sets the Id of the Configuration document.", "example": "Schema-{GUID}" }, "type": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Constants+ConfigurationType" }, "status": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Constants+ConfigurationStatus" }, "details": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.AzureResourceTemplate" }, "creationDate": { "type": "string", "description": "Gets or sets the creation date of the Configuration document in CosmosDB.", "example": "2021-09-08T15:28:55.7946308Z" }, "lastUpdateDate": { "type": "string", "description": "Gets or sets the last update date of the Configuration document in CosmosDB.", "example": "2021-09-08T15:28:55.7946308Z" } }, "additionalProperties": false }, "VWAC.DataPlatform.ConfigurationService.DataContracts.BatchAdfRequest": { "required": [ "departmentId", "description", "name" ], "type": "object", "properties": { "name": { "type": "string", "description": "Gets or sets {name} of the Batch ADF provided by the VWAC Platform User.", "example": "my-batch-adf-request-name" }, "description": { "type": "string", "description": "Gets or Sets the Description of the Batch ADF.", "nullable": true, "example": "my-batch-adf-request-description" }, "departmentId": { "type": "string", "description": "Gets or Sets the Identifier of the Department.", "example": "Department-{GUID}" } }, "additionalProperties": false, "description": "This Class defines the structure of the Batch ADF Json input." }, "VWAC.DataPlatform.ConfigurationService.DataContracts.BatchAdfResponse": { "required": [ "creationDate", "details", "id", "lastUpdateDate", "status", "type" ], "type": "object", "properties": { "id": { "type": "string", "description": "Gets or sets the Id of the Configuration document.", "example": "Schema-{GUID}" }, "type": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Constants+ConfigurationType" }, "status": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Constants+ConfigurationStatus" }, "details": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.BatchConfiguration" }, "creationDate": { "type": "string", "description": "Gets or sets the creation date of the Configuration document in CosmosDB.", "example": "2021-09-08T15:28:55.7946308Z" }, "lastUpdateDate": { "type": "string", "description": "Gets or sets the last update date of the Configuration document in CosmosDB.", "example": "2021-09-08T15:28:55.7946308Z" } }, "additionalProperties": false, "description": "This Class defines the structure of the BatchConfiguration Json input." }, "VWAC.DataPlatform.ConfigurationService.DataContracts.BatchPipelineRequest": { "required": [ "departmentId", "description", "name", "schemas", "useCases" ], "type": "object", "properties": { "name": { "type": "string", "description": "Gets or sets {name} of the Batch Pipeline provided by the VWAC Platform User.", "example": "my-batch-pipeline-name" }, "description": { "type": "string", "description": "Gets or Sets the Description of the Batch Pipeline.", "nullable": true, "example": "my-batch-pipeline-description" }, "departmentId": { "type": "string", "description": "Gets or Sets the Identifier of the Department.", "example": "Deparment-{GUID}" }, "useCases": { "type": "array", "items": { "type": "string" }, "description": "Gets or sets the list of UseCases.", "example": [ "UseCase-{GUID1}", "UseCase-{GUID2}" ] }, "schemas": { "type": "array", "items": { "type": "string" }, "description": "Gets or sets the list of Schemas.", "example": [ "Schema-{GUID1}", "Schema-{GUID2}" ] } }, "additionalProperties": false, "description": "This Class defines the structure of the Batch Pipeline Json input." }, "VWAC.DataPlatform.ConfigurationService.DataContracts.BatchPipelineResponse": { "required": [ "creationDate", "details", "id", "lastUpdateDate", "status", "type" ], "type": "object", "properties": { "id": { "type": "string", "description": "Gets or sets the Id of the Configuration document.", "example": "Schema-{GUID}" }, "type": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Constants+ConfigurationType" }, "status": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Constants+ConfigurationStatus" }, "details": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.BatchPipeline" }, "creationDate": { "type": "string", "description": "Gets or sets the creation date of the Configuration document in CosmosDB.", "example": "2021-09-08T15:28:55.7946308Z" }, "lastUpdateDate": { "type": "string", "description": "Gets or sets the last update date of the Configuration document in CosmosDB.", "example": "2021-09-08T15:28:55.7946308Z" } }, "additionalProperties": false }, "VWAC.DataPlatform.ConfigurationService.DataContracts.ClaimRequest": { "required": [ "expiration", "operation", "storingSchemaIds", "system", "useCaseId", "userId" ], "type": "object", "properties": { "userId": { "type": "string", "description": "Gets or sets {UserId} of the claim.", "example": "{GUID}" }, "vehicleId": { "type": "string", "description": "Gets or sets {VehicleId} of the claim.", "nullable": true, "example": "{GUID}" }, "useCaseId": { "type": "string", "description": "Gets or sets {UseCaseId} of the claim.", "example": "UseCase-{GUID}" }, "expiration": { "type": "number", "description": "Gets or sets the {Expiration} of the claim in days.", "format": "double", "example": 1 }, "operation": { "type": "string", "description": "Gets or sets the {Operation} of the claim.", "example": "one of Create|Update|CreateOrUpdate values" }, "system": { "type": "string", "description": "Gets or sets the {System} of the claim.", "example": "Use the assigned system value for your department e.g: VWAC. Reach out to your customer success team or point of contact for your assigned system value." }, "processingSchemaIds": { "type": "array", "items": { "type": "string" }, "description": "Gets or sets list of the {ProcessingSchemaIds} of the claim.", "nullable": true, "example": [ "Schema-{GUID1}", "Schema-{GUID2}" ] }, "storingSchemaIds": { "type": "array", "items": { "type": "string" }, "description": "Gets or sets list of the {StoringSchemaIds} of the claim.", "example": [ "Schema-{GUID1}", "Schema-{GUID2}" ] }, "daysInAdvanceToNotifyExpiration": { "uniqueItems": true, "type": "array", "items": { "type": "integer", "format": "int32" }, "description": "Gets or sets the {DaysInAdvanceToNotifyExpiration} of the claim: DaysInAdvanceToNotifyExpiration is an array.", "nullable": true, "example": [ 1 ] } }, "additionalProperties": false, "description": "Representation of {Claim} for the incoming request." }, "VWAC.DataPlatform.ConfigurationService.DataContracts.ConfigurationServiceConstants+ProvisioningPermissionScope": { "enum": [ "Subscription", "ResourceGroup" ], "type": "string", "description": "Permission Scope for provisioning workspace(E.g.: Workbench, StreamingHost)." }, "VWAC.DataPlatform.ConfigurationService.DataContracts.ConfigurationServiceConstants+ProvisioningStatus": { "enum": [ "Not Started", "Provisioning", "Deleting", "Failed", "Completed" ], "type": "string", "description": "Enumeration of provisioning step types used in {DataPlatformObjectStatus}." }, "VWAC.DataPlatform.ConfigurationService.DataContracts.ConfigurationServiceConstants+ProvisioningStep": { "enum": [ "Object Registration", "Security Group Provisioning", "EventHub Provisioning", "ADLSGen2 Provisioning", "Internal Repository Provisioning", "Historical Repository Provisioning", "Workbench Provisioning", "Pipeline Channel Provisioning", "Orchestrator Resource Group Provisioning", "Customer Resource Group Provisioning", "VNet Provisioning", "Sql DB Provisioning", "Azure Funciton Provisioning", "Streaming Host Provisioning", "Update Pipelines Mapping List", "AzureDataFactory Provisioning", "Orchestrator AzureDataFactory Provisioning", "Customer AzureDataFactory Provisioning", "Spark Job Provisioning", "BatchPipeline Provisioning", "EventHub Configuration Update", "EventHub Deletion", "Storage Deletion" ], "type": "string", "description": "Enumeration of provisioning steps used in {DataPlatformObjectStatus}: one of the following values -\r\nObjectRegistration, SecurityGroupProvisioning, EventHubProvisioning, ADLSGen2Provisioning, InternalRepositoryProvisioning, HistoricalRepositoryProvisioning,\r\nWorkbenchProvisioning, PipelineChannelProvisioning, CustomerResourceGroupProvisioning, VNetProvisioning, SqlDBProvisioning, AzureFunctionProvisioning,\r\nOrchestratorAzureDataFactoryProvisioning, CustomerResourceGroupProvisioning, VNetProvisioning, SqlProvisioning, AzureFuncitonProvisioning,\r\nStreamingHostProvisioning,UpdatePipelinesMappingList, AzureDataFactoryProvisioning, OrchestratorAzureDataFactoryProvisioning, CustomerAzureDataFactoryProvisioning,\r\nSparkJobProvisioning, BatchPipelineProvisioning, UpdateEventHubConfig, EventHubDeletion" }, "VWAC.DataPlatform.ConfigurationService.DataContracts.ConfigurationServiceConstants+ProvisioningStepType": { "enum": [ "Cosmos DB Document", "Repository", "InternalRepository", "Workbench", "StreamingHost", "AzureDataFactory", "BatchPipeline", "Pipeline Channel", "AzureFunctionsCSharp", "AzureFunctionsContainers", "AzureFunctionsPython", "SecurityGroup", "HDInsightSparkJob" ], "type": "string", "description": "Enumeration of provisioning step types used in {DataPlatformObjectStatus}:\r\nCosmosDBDocument, Repository, InternalRepository, Workbench, StreamingHost, AzureDataFactory, BatchPipeline, PipelineChannel,\r\nAzureFunctionsCSharp, AzureFunctionsContainers, AzureFunctionsPython, SecurityGroup or HDInsightSparkJob." }, "VWAC.DataPlatform.ConfigurationService.DataContracts.ConfigurationServiceConstants+RepositoryType": { "enum": [ "EventHub", "ADLSGen2" ], "type": "string", "description": "Enumeration to define repository types." }, "VWAC.DataPlatform.ConfigurationService.DataContracts.ConfigurationServiceConstants+RequestStatus": { "enum": [ "Submitted", "Provisioning", "Failed", "PartiallyFailed", "Completed" ], "type": "string", "description": "Request Object RequestJobStatus." }, "VWAC.DataPlatform.ConfigurationService.DataContracts.ConfigurationServiceConstants+RequestType": { "enum": [ "UseCase", "BatchConfiguration", "BatchPipeline", "Schema", "StreamingPipeline", "Department", "AnonymizedMethod", "Workbench" ], "type": "string", "description": "DataPlatform Object Request Types. This is used by Cosmos Db." }, "VWAC.DataPlatform.ConfigurationService.DataContracts.ConfigurationServiceConstants+StreamingPipelineCategory": { "enum": [ "Custom", "Passthru" ], "type": "string", "description": "Category of the Streaming Pipeline." }, "VWAC.DataPlatform.ConfigurationService.DataContracts.CreateWorkbenchRequest": { "required": [ "departmentId", "name", "owner" ], "type": "object", "properties": { "departmentId": { "type": "string", "description": "Gets or sets the identifier of the Department.", "example": "Department-{GUID}" }, "name": { "type": "string", "description": "Gets or sets the WorkbenchTemplate name.", "example": "AzureFunctionCSharp" }, "owner": { "type": "string", "description": "Gets or sets the owner id for NewWorkspaceRequest at the time of Workbench POST request.", "example": "joe.smith@vwac.net" }, "spnId": { "type": "string", "description": "Gets or sets the Internal ObjectId For SPN.", "nullable": true, "example": "my-service-principal-id" }, "spnClientId": { "type": "string", "description": "Gets or sets the Service Principal Client Id.", "nullable": true, "example": "my-service-principal-id" }, "spnName": { "type": "string", "description": "Gets or sets the Service Principal Name.", "nullable": true, "example": "my-service-principal-name" }, "subscriptionId": { "type": "string", "description": "Gets or sets the Subscription Id where the Workbench is provisioned.", "nullable": true, "example": "my-subscription-id" }, "resourceGroupName": { "type": "string", "description": "Gets or sets the Resource Group Name.", "nullable": true, "example": "RG-Name" } }, "additionalProperties": false, "description": "VWAC.DataPlatform.ConfigurationService.DataContracts.CreateWorkbenchRequest contains the parameters for triggering the Workbench POST REST endpoint." }, "VWAC.DataPlatform.ConfigurationService.DataContracts.DataPlatformObjectStatus": { "type": "object", "properties": { "step": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.ConfigurationServiceConstants+ProvisioningStep" }, "type": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.ConfigurationServiceConstants+ProvisioningStepType" }, "status": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.ConfigurationServiceConstants+ProvisioningStatus" }, "timeStamp": { "type": "string", "description": "Gets or sets the timeStamp.", "format": "date-time" }, "message": { "type": "string", "description": "Gets or sets the message of the provisioning step.", "nullable": true, "example": "sample-message" }, "additionalInfo": { "description": "Represents a JSON object.", "nullable": true } }, "additionalProperties": false, "description": "Representation of Data Platform object lifecycle status." }, "VWAC.DataPlatform.ConfigurationService.DataContracts.DepartmentRequest": { "required": [ "name", "notifyEmail", "primaryOwnerLogin", "scope", "subscriptionId" ], "type": "object", "properties": { "name": { "type": "string", "description": "Gets or sets {name} of the department provided by the VWAC Platform User.", "example": "my-department" }, "scope": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Constants+DepartmentScope" }, "subscriptionId": { "type": "string", "description": "Gets or sets default {subscriptionId} of the department provided by the VWAC Platform User.", "example": "{GUID}" }, "primaryOwnerLogin": { "type": "string", "description": "Gets or sets {primaryOwnerLogin} of the department provided by the VWAC Platform User.", "example": "joe.smith@vwac.net" }, "secondaryOwnerLogin": { "type": "string", "description": "Gets or sets {secondaryOwnerLogin} of the department provided by the VWAC Platform User.", "nullable": true, "example": "jane.smith@vwac.net" }, "notifyEmail": { "type": "string", "description": "Gets or sets {notifyEmail} of the department provided by the VWAC Platform User.", "format": "email", "example": "joe.smith@vwac.net" } }, "additionalProperties": false, "description": "Representation of {DepartmentRequest} object for the incoming request." }, "VWAC.DataPlatform.ConfigurationService.DataContracts.DepartmentResponse": { "required": [ "creationDate", "details", "id", "lastUpdateDate", "status", "type" ], "type": "object", "properties": { "id": { "type": "string", "description": "Gets or sets the Id of the Configuration document.", "example": "Schema-{GUID}" }, "type": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Constants+ConfigurationType" }, "status": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Constants+ConfigurationStatus" }, "details": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Department" }, "creationDate": { "type": "string", "description": "Gets or sets the creation date of the Configuration document in CosmosDB.", "example": "2021-09-08T15:28:55.7946308Z" }, "lastUpdateDate": { "type": "string", "description": "Gets or sets the last update date of the Configuration document in CosmosDB.", "example": "2021-09-08T15:28:55.7946308Z" } }, "additionalProperties": false }, "VWAC.DataPlatform.ConfigurationService.DataContracts.DeploymentModel": { "required": [ "isSubscriptionScope", "priority", "propertiesPath", "templatePath", "type" ], "type": "object", "properties": { "type": { "type": "string", "description": "Gets or sets type of the resource to be created. Ex: ResourceGroup, VNet, SQL DB or Azure function.", "example": "ResourceGroup" }, "templatePath": { "type": "string", "description": "Gets or sets template file from the Blob store.", "example": "path_to_template_file" }, "propertiesPath": { "type": "string", "description": "Gets or sets properties file from the Blob store. This file contains the names of the resources.", "example": "path_to_properties_file" }, "priority": { "type": "integer", "description": "Gets or sets priority of the deployment. Lower number denotes higher priority. Deployment sequence of the resources depends on the priority.", "format": "int32", "example": 3 }, "isSubscriptionScope": { "type": "boolean", "description": "Gets or sets a value indicating whether the SubscriptionScope of the resource is the same subscription or not.\r\nTrue - represents that the resource has to be created in the same subscription.\r\nFalse - represents that the resource has to be created in a different subscription." }, "name": { "type": "string", "description": "Gets or sets deployment name.", "nullable": true }, "description": { "type": "string", "description": "Gets or sets description of the resource.", "nullable": true } }, "additionalProperties": false, "description": "DeploymentModel." }, "VWAC.DataPlatform.ConfigurationService.DataContracts.ExistingStreamingHostRequest": { "type": "object", "properties": { "id": { "type": "string", "description": "Gets or Sets the existing workspace id.", "nullable": true, "example": "Workbench-{GUID}" }, "spnId": { "type": "string", "description": "Gets or Sets the Internal ObjectId For Spn.", "nullable": true, "example": "my-service-principal-id" }, "spnClientId": { "type": "string", "description": "Gets or Sets the Internal Application Client Id.", "nullable": true, "example": "my-service-principal-id" }, "spnName": { "type": "string", "description": "Gets or Sets the Service Principal Name.", "nullable": true, "example": "my-service-principal-name" } }, "additionalProperties": false }, "VWAC.DataPlatform.ConfigurationService.DataContracts.ExistingWorkbenchRequest": { "type": "object", "properties": { "id": { "type": "string", "description": "Gets or Sets the existing workspace id.", "nullable": true, "example": "Workbench-{GUID}" }, "spnId": { "type": "string", "description": "Gets or Sets the Internal ObjectId For Spn.", "nullable": true, "example": "my-service-principal-id" }, "spnClientId": { "type": "string", "description": "Gets or Sets the Internal Application Client Id.", "nullable": true, "example": "my-service-principal-id" }, "spnName": { "type": "string", "description": "Gets or Sets the Service Principal Name.", "nullable": true, "example": "my-service-principal-name" } }, "additionalProperties": false }, "VWAC.DataPlatform.ConfigurationService.DataContracts.NewStreamingHostRequest": { "required": [ "name", "owner" ], "type": "object", "properties": { "name": { "type": "string", "description": "Gets or sets the WorkbenchTemplate name.", "example": "AzureFunctionCSharp" }, "owner": { "type": "string", "description": "Gets or sets the owner id for NewWorkspaceRequest at the time of Workbench POST request.", "example": "joe.smith@vwac.net" }, "spnId": { "type": "string", "description": "Gets or sets the Internal ObjectId For SPN.", "nullable": true, "example": "my-service-principal-id" }, "spnClientId": { "type": "string", "description": "Gets or sets the Service Principal Client Id.", "nullable": true, "example": "my-service-principal-id" }, "spnName": { "type": "string", "description": "Gets or sets the Service Principal Name.", "nullable": true, "example": "my-service-principal-name" }, "subscriptionId": { "type": "string", "description": "Gets or sets the Subscription Id where the Workbench is provisioned.", "nullable": true, "example": "my-subscription-id" }, "resourceGroupName": { "type": "string", "description": "Gets or sets the Resource Group Name.", "nullable": true, "example": "RG-Name" } }, "additionalProperties": false }, "VWAC.DataPlatform.ConfigurationService.DataContracts.NewWorkbenchRequest": { "required": [ "name", "owner" ], "type": "object", "properties": { "name": { "type": "string", "description": "Gets or sets the WorkbenchTemplate name.", "example": "AzureFunctionCSharp" }, "owner": { "type": "string", "description": "Gets or sets the owner id for NewWorkspaceRequest at the time of Workbench POST request.", "example": "joe.smith@vwac.net" }, "spnId": { "type": "string", "description": "Gets or sets the Internal ObjectId For SPN.", "nullable": true, "example": "my-service-principal-id" }, "spnClientId": { "type": "string", "description": "Gets or sets the Service Principal Client Id.", "nullable": true, "example": "my-service-principal-id" }, "spnName": { "type": "string", "description": "Gets or sets the Service Principal Name.", "nullable": true, "example": "my-service-principal-name" }, "subscriptionId": { "type": "string", "description": "Gets or sets the Subscription Id where the Workbench is provisioned.", "nullable": true, "example": "my-subscription-id" }, "resourceGroupName": { "type": "string", "description": "Gets or sets the Resource Group Name.", "nullable": true, "example": "RG-Name" } }, "additionalProperties": false, "description": "This class holds details for the new workbench\r\nThe owner for the wB and the type of the workbench." }, "VWAC.DataPlatform.ConfigurationService.DataContracts.RequestResponse": { "required": [ "action", "creationDate", "id", "lastUpdateDate", "requestJobStatus", "type" ], "type": "object", "properties": { "id": { "type": "string", "description": "Gets or sets the Id of the RequestResponse document.", "example": "{GUID}" }, "type": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.ConfigurationServiceConstants+RequestType" }, "requestJobStatus": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.ConfigurationServiceConstants+RequestStatus" }, "action": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.Internal.Constants+Action" }, "dataPlatformObjectStatus": { "type": "array", "items": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.DataPlatformObjectStatus" }, "description": "Gets or sets the list of dataPlatformObjectStatus.", "nullable": true }, "dataPlatformObjectId": { "type": "string", "description": "Gets or sets the dataPlatformObjectId.", "nullable": true, "example": "UseCase-{GUID}" }, "creationDate": { "type": "string", "description": "Gets or sets the creation date of the RequestResponse object in CosmosDB document.", "example": "2021-09-08T15:28:55.7946308Z" }, "lastUpdateDate": { "type": "string", "description": "Gets or sets the last Update date of the RequestResponse object in CosmosDB document.", "example": "2021-09-08T15:28:55.7946308Z" } }, "additionalProperties": false, "description": "Definition of RequestResponse class." }, "VWAC.DataPlatform.ConfigurationService.DataContracts.SchemaDocumentResponse": { "required": [ "creationDate", "details", "id", "lastUpdateDate", "status", "type" ], "type": "object", "properties": { "id": { "type": "string", "description": "Gets or sets the Id of the Configuration document.", "example": "Schema-{GUID}" }, "type": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Constants+ConfigurationType" }, "status": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Constants+ConfigurationStatus" }, "details": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.SchemaDocument" }, "creationDate": { "type": "string", "description": "Gets or sets the creation date of the Configuration document in CosmosDB.", "example": "2021-09-08T15:28:55.7946308Z" }, "lastUpdateDate": { "type": "string", "description": "Gets or sets the last update date of the Configuration document in CosmosDB.", "example": "2021-09-08T15:28:55.7946308Z" } }, "additionalProperties": false }, "VWAC.DataPlatform.ConfigurationService.DataContracts.SchemaRequestV2": { "required": [ "category", "departmentId", "format", "name", "structure", "version" ], "type": "object", "properties": { "name": { "pattern": "^Schema(\\.([^_!@#$%^&*()<>,/+=?:;\"]+)){3}$", "type": "string", "description": "Gets or sets schema {name}.", "example": "Schema.vw.tire.tiregripschema" }, "version": { "type": "integer", "description": "{Gets or sets version} of the Schema. Can be any integer.", "format": "int32", "example": 10 }, "format": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Constants+SchemaFormat" }, "departmentId": { "type": "string", "description": "Gets or sets iD of the department where this schema object will be stored.", "example": "Department-{GUID}" }, "anonymizedMethodId": { "type": "string", "description": "Gets or sets {anonymizedMethodId} to use with this schema.", "nullable": true, "example": "AnonymizedMethod-{GUID}" }, "category": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Constants+SchemaCategory" }, "structure": { "$ref": "#/components/schemas/Newtonsoft.Json.Schema.JSchema" } }, "additionalProperties": false }, "VWAC.DataPlatform.ConfigurationService.DataContracts.StreamingHostRequestConfiguration": { "type": "object", "properties": { "new": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.NewStreamingHostRequest" }, "existing": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.ExistingStreamingHostRequest" } }, "additionalProperties": false, "description": "Representation of VWAC.DataPlatform.ConfigurationService.DataContracts.StreamingHostRequestConfiguration." }, "VWAC.DataPlatform.ConfigurationService.DataContracts.StreamingHostResponse": { "required": [ "creationDate", "id", "resourceGroup", "spnName", "status", "streamingHostType", "subscription" ], "type": "object", "properties": { "id": { "type": "string", "description": "Gets or sets the hosts of the StreamingHost document." }, "status": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Constants+ConfigurationStatus" }, "streamingHostType": { "type": "string", "description": "Gets or Sets the StreamingHostType of the StreamingHost." }, "subscription": { "type": "string", "description": "Gets or sets the azure subscription where the StreamingHost is deployed." }, "resourceGroup": { "type": "string", "description": "Gets or sets the Azure Resource Group name where the StreamingHost technologies are deployed." }, "spnName": { "type": "string", "description": "Gets or sets the name of SPN be used for creating StreamingHost." }, "creationDate": { "type": "string", "description": "Gets or Sets the date when the StreamingHost is created." } }, "additionalProperties": false, "description": "This class defines the StreamingHost response object." }, "VWAC.DataPlatform.ConfigurationService.DataContracts.StreamingPipelineRequestConfig": { "type": "object", "properties": { "retentionPeriod": { "maximum": 90, "minimum": 1, "type": "integer", "description": "Gets or Sets the retention period in days for eventhub.", "format": "int32", "nullable": true }, "partitionCount": { "maximum": 100, "minimum": 1, "type": "integer", "description": "Gets or Sets the PartitionCount for eventhub.", "format": "int32", "nullable": true } }, "additionalProperties": false, "description": "StreamingPipelineRequestConfig class defines the configuration values needed for StreamingPipeline event hub." }, "VWAC.DataPlatform.ConfigurationService.DataContracts.StreamingPipelineRequestV2": { "required": [ "name" ], "type": "object", "properties": { "name": { "type": "string", "description": "Gets or sets {name} of the Streaming pipeline provided by the VWAC Platform User.", "example": "my-streaming-pipeline" }, "description": { "type": "string", "description": "Gets or sets {description} of the Streaming pipeline provided by the VWAC Platform User.", "nullable": true, "example": "my-streaming-pipeline-description" }, "departmentId": { "type": "string", "description": "Gets or Sets {departmentId} of the Streaming pipeline provided by the VWAC Platform User.", "nullable": true, "example": "Department-{GUID}" }, "category": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.ConfigurationServiceConstants+StreamingPipelineCategory" }, "mappings": { "type": "array", "items": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.SchemaUseCasesMapping" }, "description": "Gets or sets {mappings} of the Schema and the UseCases provided by the VWAC Platform User.", "nullable": true }, "streamingHost": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.StreamingHostRequestConfiguration" }, "configuration": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.StreamingPipelineRequestConfig" } }, "additionalProperties": false }, "VWAC.DataPlatform.ConfigurationService.DataContracts.StreamingPipelineResponse": { "required": [ "creationDate", "details", "id", "lastUpdateDate", "status", "type" ], "type": "object", "properties": { "id": { "type": "string", "description": "Gets or sets the Id of the Configuration document.", "example": "Schema-{GUID}" }, "type": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Constants+ConfigurationType" }, "status": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Constants+ConfigurationStatus" }, "details": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.StreamingPipeline" }, "creationDate": { "type": "string", "description": "Gets or sets the creation date of the Configuration document in CosmosDB.", "example": "2021-09-08T15:28:55.7946308Z" }, "lastUpdateDate": { "type": "string", "description": "Gets or sets the last update date of the Configuration document in CosmosDB.", "example": "2021-09-08T15:28:55.7946308Z" } }, "additionalProperties": false }, "VWAC.DataPlatform.ConfigurationService.DataContracts.StreamingPipelineUpdateRequest": { "type": "object", "properties": { "configuration": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.StreamingPipelineUpdateRequestConfig" } }, "additionalProperties": false, "description": "This Class defines the properties required for updating streaming pipeline." }, "VWAC.DataPlatform.ConfigurationService.DataContracts.StreamingPipelineUpdateRequestConfig": { "type": "object", "properties": { "retentionPeriod": { "maximum": 90, "minimum": 1, "type": "integer", "description": "Gets or Sets the retention period in days for eventhub.", "format": "int32", "nullable": true }, "partitionCount": { "maximum": 100, "minimum": 1, "type": "integer", "description": "Gets or Sets the PartitionCount for eventhub.", "format": "int32", "nullable": true } }, "additionalProperties": false, "description": "StreamingPipelineUpdateConfig class defines the configuration values needed for updating StreamingPipeline event hub." }, "VWAC.DataPlatform.ConfigurationService.DataContracts.UseCaseConnectionInfo": { "type": "object", "properties": { "id": { "type": "string", "description": "Gets or sets UseCase Id.", "nullable": true }, "repositories": { "type": "array", "items": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.UseCaseConnectionInfoRepository" }, "description": "Gets list of Repositories.", "nullable": true } }, "additionalProperties": false, "description": "Representation of {UseCaseConnectionInfo}." }, "VWAC.DataPlatform.ConfigurationService.DataContracts.UseCaseConnectionInfoRepository": { "type": "object", "properties": { "technology": { "type": "string", "description": "Gets or sets repository technology.", "nullable": true }, "connectionString": { "type": "string", "description": "Gets or sets repository connection string.", "nullable": true } }, "additionalProperties": false, "description": "Representation of {UseCase} ConnectionInfo Repository." }, "VWAC.DataPlatform.ConfigurationService.DataContracts.UseCaseDocumentResponse": { "required": [ "creationDate", "details", "id", "lastUpdateDate", "status", "type" ], "type": "object", "properties": { "id": { "type": "string", "description": "Gets or sets the Id of the Configuration document.", "example": "Schema-{GUID}" }, "type": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Constants+ConfigurationType" }, "status": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Constants+ConfigurationStatus" }, "details": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.UseCaseDocument" }, "creationDate": { "type": "string", "description": "Gets or sets the creation date of the Configuration document in CosmosDB.", "example": "2021-09-08T15:28:55.7946308Z" }, "lastUpdateDate": { "type": "string", "description": "Gets or sets the last update date of the Configuration document in CosmosDB.", "example": "2021-09-08T15:28:55.7946308Z" } }, "additionalProperties": false }, "VWAC.DataPlatform.ConfigurationService.DataContracts.UseCaseRequest": { "required": [ "configuration", "departmentId", "description", "name", "repositories", "schemas" ], "type": "object", "properties": { "name": { "pattern": "^UseCase(\\.([^_!@#$%^&*()<>,/+=?:;\"]+)){2}$", "type": "string", "description": "Gets or Sets the Name of the UseCase, the format of the name should follow UseCase.{Component}.{Business Purpose} format.", "example": "UseCase.abc.xyz" }, "description": { "type": "string", "description": "Gets or Sets the Description of the UseCase.", "nullable": true, "example": "This is a sample UseCase." }, "departmentId": { "type": "string", "description": "Gets or Sets the Identifier of the Department.", "example": "Department-{GUID}" }, "schemas": { "type": "array", "items": { "type": "string" }, "description": "Gets or sets the list of Schemas.", "example": [ "Schema-{GUID1}", "Schema-{GUID2}" ] }, "workbenches": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.WorkbenchRequestConfiguration" }, "repositories": { "type": "array", "items": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.ConfigurationServiceConstants+RepositoryType" }, "description": "Gets or sets the list of Repositories." }, "configuration": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.UseCaseRequestConfig" }, "additionalProperties": { "description": "Represents an abstract JSON token.", "nullable": true }, "metadataProperties": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.MetadataProperties" } }, "additionalProperties": false, "description": "This Class defines the structure of the UseCase Json input." }, "VWAC.DataPlatform.ConfigurationService.DataContracts.UseCaseRequestConfig": { "required": [ "keepHistoricalData", "streamingTimeToConsumption" ], "type": "object", "properties": { "keepHistoricalData": { "type": "boolean", "description": "Gets or Sets a value indicating whether to KeepHistoricalData.", "example": true }, "streamingTimeToConsumption": { "type": "integer", "description": "Gets or Sets the StreamingTimeToConsumption (in Days).", "format": "int32", "example": 0 }, "dataLake": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.DataLake" }, "retentionPeriod": { "maximum": 90, "minimum": 1, "type": "integer", "description": "Gets or Sets the retention period in days for eventhub.", "format": "int32", "nullable": true }, "partitionCount": { "maximum": 100, "minimum": 1, "type": "integer", "description": "Gets or Sets the PartitionCount for eventhub.", "format": "int32", "nullable": true } }, "additionalProperties": false, "description": "UseCaseRequestConfig class defines the configuration values needed for UseCase input." }, "VWAC.DataPlatform.ConfigurationService.DataContracts.UseCaseUpdateRequest": { "type": "object", "properties": { "configuration": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.UseCaseUpdateRequestConfig" } }, "additionalProperties": false, "description": "This Class defines the properties required for updating usecase." }, "VWAC.DataPlatform.ConfigurationService.DataContracts.UseCaseUpdateRequestConfig": { "type": "object", "properties": { "retentionPeriod": { "maximum": 90, "minimum": 1, "type": "integer", "description": "Gets or Sets the retention period in days for eventhub.", "format": "int32", "nullable": true }, "partitionCount": { "maximum": 100, "minimum": 1, "type": "integer", "description": "Gets or Sets the PartitionCount for eventhub.", "format": "int32", "nullable": true } }, "additionalProperties": false, "description": "UseCaseUpdateConfig class defines the configuration values needed for updating use case configuaration." }, "VWAC.DataPlatform.ConfigurationService.DataContracts.WorkbenchRequestConfiguration": { "type": "object", "properties": { "new": { "type": "array", "items": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.NewWorkbenchRequest" }, "description": "Gets or sets the new Workbenches that needs to be provisioned.", "nullable": true }, "existing": { "type": "array", "items": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.ExistingWorkbenchRequest" }, "description": "Gets or sets the existing Workbenches that are already provisioned.", "nullable": true } }, "additionalProperties": false, "description": "WorkbenchRequest." }, "VWAC.DataPlatform.ConfigurationService.DataContracts.WorkbenchResponse": { "required": [ "creationDate", "id", "resourceGroup", "spnName", "status", "subscription", "workBenchType" ], "type": "object", "properties": { "id": { "type": "string", "description": "Gets or sets the Id of the Workbench document.", "example": "Workbench-{GUID}." }, "status": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Constants+ConfigurationStatus" }, "workBenchType": { "type": "string", "description": "Gets or sets the Type of the Workbench.", "example": "UCSharpFunctionsWithSingleSQLDB." }, "subscription": { "type": "string", "description": "Gets or sets the azure subscription where the Workbench is deployed.", "example": "{GUID}." }, "resourceGroup": { "type": "string", "description": "Gets or sets the Azure Resource Group name where the Workbench components are deployed.", "example": "RG-{GUID}." }, "spnName": { "type": "string", "description": "Gets or sets the name of SPN be used to provision the Workbench components.", "example": "vwac-datap-sip-test-sandbox-spn." }, "creationDate": { "type": "string", "description": "Gets or sets the date when the Workbench is created.", "example": "2021-09-08T15:28:55.7946308Z." } }, "additionalProperties": false, "description": "Definition of WorkbenchResponse class." }, "VWAC.DataPlatform.ConfigurationService.DataContracts.WorkbenchTemplate": { "required": [ "deployments", "name", "permissionsScope" ], "type": "object", "properties": { "name": { "type": "string", "description": "Gets or sets the name of the WorkbenchTemplate.", "example": "UCSharpFunctionsWithSingleSQLDB" }, "deployments": { "type": "array", "items": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.DeploymentModel" }, "description": "Gets or sets the list of deployments created during the Workbench provisioning." }, "permissionsScope": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.ConfigurationServiceConstants+ProvisioningPermissionScope" } }, "additionalProperties": false, "description": "Representation of VWAC.DataPlatform.ConfigurationService.DataContracts.WorkbenchTemplate." }, "VWAC.DataPlatform.ConfigurationService.DataContracts.WorkbenchTemplateResponse": { "required": [ "creationDate", "details", "id", "lastUpdateDate", "status", "type" ], "type": "object", "properties": { "id": { "type": "string", "description": "Gets or sets the Id of the Configuration document.", "example": "Schema-{GUID}" }, "type": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Constants+ConfigurationType" }, "status": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Constants+ConfigurationStatus" }, "details": { "$ref": "#/components/schemas/VWAC.DataPlatform.ConfigurationService.DataContracts.WorkbenchTemplate" }, "creationDate": { "type": "string", "description": "Gets or sets the creation date of the Configuration document in CosmosDB.", "example": "2021-09-08T15:28:55.7946308Z" }, "lastUpdateDate": { "type": "string", "description": "Gets or sets the last update date of the Configuration document in CosmosDB.", "example": "2021-09-08T15:28:55.7946308Z" } }, "additionalProperties": false }, "VWAC.DataPlatform.Shared.DataContracts.ADLSGen2": { "type": "object", "properties": { "format": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Format" }, "batchConfiguration": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.ADLSGen2BatchConfiguration" } }, "additionalProperties": false, "description": "This Class defines the structure of Usecase when ADLSGen2 as storage." }, "VWAC.DataPlatform.Shared.DataContracts.ADLSGen2BatchConfiguration": { "type": "object", "properties": { "batchFrequency": { "type": "integer", "description": "Gets or Sets the Batch frequency in sec for ADLSGen2 storage.", "format": "int64", "example": 5 }, "maxBatchSize": { "type": "integer", "description": "Gets or Sets the Batch size for ADLSGen2 storage.", "format": "int32", "example": 10 } }, "additionalProperties": false, "description": "This Class defines the structure of Usecase when ADLSGen2 as storage." }, "VWAC.DataPlatform.Shared.DataContracts.AnonymizedMethodDocument": { "type": "object", "properties": { "departmentId": { "type": "string", "description": "Gets or sets {departmentId} of the AnonymizedMethod provided by the VWAC Platform User.", "nullable": true }, "name": { "type": "string", "description": "Gets or sets {name} of the AnonymizedMethod provided by the VWAC Platform User.", "nullable": true }, "description": { "type": "string", "description": "Gets or sets {description} of the AnonymizedMethod provided by the VWAC Platform User.", "nullable": true } }, "additionalProperties": false, "description": "This Class defines the structure of the AnonymizedMethod Object." }, "VWAC.DataPlatform.Shared.DataContracts.Batch.CustomerAdf": { "required": [ "subscriptionId" ], "type": "object", "properties": { "subscriptionId": { "type": "string", "description": "Gets or Sets the subscription id." }, "resourceGroup": { "type": "string", "description": "Gets or Sets the resource group of the resource.", "nullable": true }, "resourceId": { "type": "string", "description": "Gets or Sets the resource Id of the resource.", "nullable": true } }, "additionalProperties": false }, "VWAC.DataPlatform.Shared.DataContracts.Batch.OrchestrationAdf": { "required": [ "subscriptionId" ], "type": "object", "properties": { "subscriptionId": { "type": "string", "description": "Gets or Sets the subscription id." }, "resourceGroup": { "type": "string", "description": "Gets or Sets the resource group of the resource.", "nullable": true }, "resourceId": { "type": "string", "description": "Gets or Sets the resource Id of the resource.", "nullable": true } }, "additionalProperties": false }, "VWAC.DataPlatform.Shared.DataContracts.BatchConfiguration": { "required": [ "departmentId", "description", "name" ], "type": "object", "properties": { "resourceType": { "type": "string", "description": "Gets or Sets the Batch Pipeline Resource Type.", "nullable": true }, "departmentId": { "type": "string", "description": "Gets or sets {departmentId} of the BatchConfiguration object." }, "name": { "type": "string", "description": "Gets or Sets the Name of the BatchConfiguration object." }, "description": { "type": "string", "description": "Gets or Sets the Description of the batch ADF." }, "stagingContainer": { "type": "string", "description": "Gets or Sets the staging storage container for the Batch ADF.", "nullable": true }, "orchestrationAdf": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Batch.OrchestrationAdf" }, "customerAdf": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Batch.CustomerAdf" } }, "additionalProperties": false, "description": "This class defines the structure of the batch ADF." }, "VWAC.DataPlatform.Shared.DataContracts.BatchPipeline": { "type": "object", "properties": { "description": { "type": "string", "description": "Gets or Sets the Description of the Batch Pipeline.", "nullable": true }, "departmentId": { "type": "string", "description": "Gets or Sets the departmentId of the Batch Pipeline.", "nullable": true }, "useCases": { "type": "array", "items": { "type": "string" }, "description": "Gets or sets the list of UseCases's.", "nullable": true }, "schemas": { "type": "array", "items": { "type": "string" }, "description": "Gets or sets the list of Schema's.", "nullable": true }, "staging": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.StagingStorage" }, "userPipelineProperties": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.BatchPipelineProperties" }, "authenticatorPipelineProperties": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.BatchPipelineProperties" }, "distributorPipelineProperties": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.BatchPipelineProperties" } }, "additionalProperties": false, "description": "This class defines the structure of the Batch Pipeline." }, "VWAC.DataPlatform.Shared.DataContracts.BatchPipelineProperties": { "type": "object", "properties": { "subscriptionId": { "type": "string", "description": "Gets or sets {SubscriptionId}.", "nullable": true }, "resourceGroup": { "type": "string", "description": "Gets or sets {ResourceGroup}.", "nullable": true }, "adfDataFactory": { "type": "string", "description": "Gets or Sets the adf Data Factory of the Batch Pipeline.", "nullable": true }, "adfPipelineName": { "type": "string", "description": "Gets or Sets the Adf Pipeline Name.", "nullable": true } }, "additionalProperties": false, "description": "This class defines the structure of the Batch ADF Pipeline." }, "VWAC.DataPlatform.Shared.DataContracts.Cloud": { "type": "object", "properties": { "subscriptionId": { "type": "string", "description": "Gets or Sets the subscription id in the cloud.", "nullable": true }, "provider": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Constants+CloudProvider" }, "type": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Constants+SubscriptionType" } }, "additionalProperties": false, "description": "This class defines the structure of the cloud." }, "VWAC.DataPlatform.Shared.DataContracts.Constants+CloudProvider": { "enum": [ "Azure", "AWS", "GCP", "IBM" ], "type": "string", "description": "Enumeration to define cloud providers." }, "VWAC.DataPlatform.Shared.DataContracts.Constants+ConfigurationStatus": { "enum": [ "InProvisioning", "Active", "Disabled", "Deleted" ], "type": "string", "description": "Configuration Object Status." }, "VWAC.DataPlatform.Shared.DataContracts.Constants+ConfigurationType": { "enum": [ "AnonymizedMethod", "Department", "BatchConfiguration", "BatchPipeline", "UseCase", "Schema", "Storage", "StreamingPipeline", "PipelineChannelGroup", "PipelineMap", "ReceptorMessageFilter", "DistributorMessageFilter", "Workbench", "WorkbenchTemplate", "StreamingHostTemplate", "InternalRepositoryGroup", "ColdRepositoryGroup", "ColdRepositoryCluster", "ColdRepositoryETLApp", "HistoricalRepositoryGroup", "WarmRepositoryGroup", "StreamingHost", "StagingRepositoryGroup", "AzureResourceTemplate" ], "type": "string", "description": "DataPlatform Object Types. This is used by Cosmos Db." }, "VWAC.DataPlatform.Shared.DataContracts.Constants+DepartmentScope": { "enum": [ "Private", "Shared" ], "type": "string", "description": "Enumeration to define department scopes." }, "VWAC.DataPlatform.Shared.DataContracts.Constants+SchemaCategory": { "enum": [ "personal", "anonymized" ], "type": "string", "description": "Enumeration to define schema categories." }, "VWAC.DataPlatform.Shared.DataContracts.Constants+SchemaFormat": { "enum": [ "json", "text" ], "type": "string", "description": "Enumeration to define schema format." }, "VWAC.DataPlatform.Shared.DataContracts.Constants+StreamingPipelineCategory": { "enum": [ "Custom", "Passthru" ], "type": "string", "description": "Category of the Streaming Pipeline." }, "VWAC.DataPlatform.Shared.DataContracts.Constants+SubscriptionType": { "enum": [ "Default", "Workbench" ], "type": "string", "description": "Enumeration to define subscription purpose." }, "VWAC.DataPlatform.Shared.DataContracts.DataEnrichment": { "required": [ "schemaId" ], "type": "object", "properties": { "schemaId": { "type": "string", "description": "Gets or sets {SchemaId} of the SchemaId." }, "vehicleProps": { "type": "array", "items": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.VehicleProperty" }, "description": "Gets or sets {VehicleProperties} of the VehicleProperty.", "nullable": true } }, "additionalProperties": false, "description": "Definition of metadata object stored in use case to enrich streaming message with metadata properties." }, "VWAC.DataPlatform.Shared.DataContracts.DataLake": { "type": "object", "properties": { "adlsgen2": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.ADLSGen2" } }, "additionalProperties": false, "description": "This Class defines the structure of Usecase for Datalake." }, "VWAC.DataPlatform.Shared.DataContracts.Department": { "type": "object", "properties": { "name": { "type": "string", "description": "Gets or Sets the name of the department.", "nullable": true }, "scope": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Constants+DepartmentScope" }, "notifyEmail": { "type": "string", "description": "Gets or Sets the notification email address.", "nullable": true }, "owners": { "type": "array", "items": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Owner" }, "description": "Gets or Sets the owners list.", "nullable": true }, "clouds": { "type": "array", "items": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Cloud" }, "description": "Gets or Sets the cloud subscription details.", "nullable": true }, "resources": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.ResourceType" } }, "additionalProperties": false, "description": "This class defines the structure of the department." }, "VWAC.DataPlatform.Shared.DataContracts.Format": { "enum": [ "Parquet", "Json" ], "type": "string", "description": "Enumeration to define format types." }, "VWAC.DataPlatform.Shared.DataContracts.MetadataProperties": { "type": "object", "properties": { "dataEnrichment": { "type": "array", "items": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.DataEnrichment" }, "description": "Gets or sets {DataEnrichment} of the DataEnrichment.", "nullable": true } }, "additionalProperties": false, "description": "Definition of metadata object stored in use case to enrich streaming message with metadata properties." }, "VWAC.DataPlatform.Shared.DataContracts.Owner": { "type": "object", "properties": { "id": { "type": "string", "description": "Gets or Sets the id of the owner.", "nullable": true }, "isPrimary": { "type": "boolean", "description": "Gets or sets a value indicating whether owner is primary." } }, "additionalProperties": false, "description": "This class defines the structure of the owner." }, "VWAC.DataPlatform.Shared.DataContracts.Resource": { "type": "object", "properties": { "subscriptionId": { "type": "string", "description": "Gets or Sets the subscription id of the resource.", "nullable": true }, "resourceGroup": { "type": "string", "description": "Gets or Sets the resource group of the resource.", "nullable": true }, "resourceId": { "type": "string", "description": "Gets or Sets the id of the resource.", "nullable": true }, "type": { "type": "string", "description": "Gets or Sets the type of the resource.", "nullable": true } }, "additionalProperties": false, "description": "This class defines the information collected for a resource." }, "VWAC.DataPlatform.Shared.DataContracts.ResourceType": { "type": "object", "properties": { "streaming": { "type": "array", "items": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Resource" }, "description": "Gets or Sets the resources used for steaming ingestion.", "nullable": true }, "batch": { "type": "array", "items": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Resource" }, "description": "Gets or Sets the resources used for batch ingestion.", "nullable": true }, "repositories": { "type": "array", "items": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Resource" }, "description": "Gets or Sets the resources used as repositories.", "nullable": true }, "workbench": { "type": "array", "items": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Resource" }, "description": "Gets or Sets the resources used for workbench.", "nullable": true } }, "additionalProperties": false, "description": "This class defines the types of resources." }, "VWAC.DataPlatform.Shared.DataContracts.SchemaDocument": { "type": "object", "properties": { "departmentId": { "type": "string", "description": "Gets or sets {departmentId} of the Schema provided by the VWAC Platform User.", "nullable": true }, "anonymizedMethodId": { "type": "string", "description": "Gets or sets {anonymizedMethodId} of the Schema provided by the VWAC Platform User.", "nullable": true }, "name": { "type": "string", "description": "Gets or sets {name} of the Schema provided by the VWAC Platform User.", "nullable": true }, "version": { "type": "integer", "description": "Gets or sets {version} of the Schema provided by the VWAC Platform User.", "format": "int32" }, "uri": { "type": "string", "description": "Gets or sets the URI of the Schema, which is automatically generated by the VWAC Platform\r\nusing the following format: http://dataplatform.vwac.com/{name}/{version}.", "nullable": true }, "format": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Constants+SchemaFormat" }, "category": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Constants+SchemaCategory" }, "structure": { "$ref": "#/components/schemas/Newtonsoft.Json.Schema.JSchema" }, "storage": { "type": "string", "description": "Gets or sets storage used to store the storageId to save Historical data if allowed by the Use Case object.", "nullable": true } }, "additionalProperties": false, "description": "Data Platform Schema Configuration." }, "VWAC.DataPlatform.Shared.DataContracts.SchemaUseCasesMapping": { "required": [ "schemaId" ], "type": "object", "properties": { "schemaId": { "type": "string", "description": "Gets or sets {schemaId} of the Streaming pipeline provided by the VWAC Platform User.", "example": "Schema-{GUID}" }, "useCases": { "type": "array", "items": { "type": "string" }, "description": "Gets or sets {useCases} of the Streaming pipeline provided by the VWAC Platform User.", "nullable": true, "example": [ "UseCase-{GUID1}", "UseCase-{GUID2}" ] } }, "additionalProperties": false, "description": "Representation of mappings between Schema and UseCase." }, "VWAC.DataPlatform.Shared.DataContracts.StagingStorage": { "type": "object", "properties": { "storageAccount": { "type": "string", "description": "Gets or sets {storageAccount} of the batch pipeline.", "nullable": true }, "fileSystem": { "type": "string", "description": "Gets or Sets the file system for the dept of batch pipeline.", "nullable": true } }, "additionalProperties": false, "description": "This class defines the structure of the Staging Storage." }, "VWAC.DataPlatform.Shared.DataContracts.StreamingPipeline": { "type": "object", "properties": { "name": { "type": "string", "description": "Gets or sets {name} of the Streaming pipeline provided by the VWAC Platform User.", "nullable": true }, "description": { "type": "string", "description": "Gets or sets {description} of the Streaming pipeline provided by the VWAC Platform User.", "nullable": true }, "departmentId": { "type": "string", "description": "Gets or sets {departmentId} of the Streaming pipeline provided by the VWAC Platform User.", "nullable": true }, "category": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Constants+StreamingPipelineCategory" }, "mappings": { "type": "array", "items": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.SchemaUseCasesMapping" }, "description": "Gets or sets {mappings} of the Schema and the UseCases provided by the VWAC Platform User.", "nullable": true }, "streamingHostId": { "type": "string", "description": "Gets or sets {streamingHostId} of the Streaming Pipeline.", "nullable": true }, "storage": { "type": "string", "description": "Gets or sets {storage} of the Streaming Pipeline.", "nullable": true }, "configuration": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.StreamingPipelineConfig" } }, "additionalProperties": false, "description": "Representation of {StreamingPipelineObject} for storing in configuration collection." }, "VWAC.DataPlatform.Shared.DataContracts.StreamingPipelineConfig": { "type": "object", "properties": { "retentionPeriod": { "type": "integer", "description": "Gets or Sets the RetentionPeriod.", "format": "int32", "nullable": true }, "partitionCount": { "type": "integer", "description": "Gets or Sets the PartitionCount for eventhub repository.", "format": "int32", "nullable": true } }, "additionalProperties": false, "description": "StreamingPipelineConfig class defines the configuration values needed for StreamingPipeline." }, "VWAC.DataPlatform.Shared.DataContracts.StreamingPipelineConnectionInfo": { "type": "object", "properties": { "id": { "type": "string", "description": "Gets or sets {id} of the Streaming Connection Info provided by the VWAC Platform User.", "nullable": true }, "category": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.Constants+StreamingPipelineCategory" }, "pipelineConnectioninfo": { "type": "string", "description": "Gets or sets {pipelineChannel} Connection String.", "nullable": true } }, "additionalProperties": false, "description": "Representation of {StreamingPipelineConnectionInfoObject} for the response." }, "VWAC.DataPlatform.Shared.DataContracts.UseCaseConfig": { "type": "object", "properties": { "keepHistoricalData": { "type": "boolean", "description": "Gets or Sets a value indicating whether to KeepHistoricalData.", "example": 7 }, "retentionPeriod": { "type": "integer", "description": "Gets or Sets the RetentionPeriod (in Days).", "format": "int32", "nullable": true, "example": 1 }, "streamingTimeToConsumption": { "type": "integer", "description": "Gets or Sets the StreamingTimeToConsumption (in Days): currently not supported.", "format": "int32", "example": 0 }, "partitionCount": { "type": "integer", "description": "Gets or Sets the PartitionCount for eventhub repository.", "format": "int32", "nullable": true, "example": 2 }, "readOnly": { "type": "string", "description": "Gets or Sets the ReadOnly Security group details of the UseCase Cosmos document.", "nullable": true, "example": "0123456789abcdef" }, "adminOnly": { "type": "string", "description": "Gets or Sets the AdminOnly Security group details of the UseCase Cosmos document.", "nullable": true, "example": "0123456789abcdef" }, "dataLake": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.DataLake" } }, "additionalProperties": false, "description": "UseCaseConfig class defines the configuration values needed for UseCase." }, "VWAC.DataPlatform.Shared.DataContracts.UseCaseDocument": { "type": "object", "properties": { "departmentId": { "type": "string", "description": "Gets or sets {departmentId} of the UseCase.", "nullable": true }, "name": { "type": "string", "description": "Gets or Setsthe Name of the UseCase.", "nullable": true }, "description": { "type": "string", "description": "Gets or Sets the Description of the UseCase.", "nullable": true }, "schemas": { "type": "array", "items": { "type": "string" }, "description": "Gets or sets the list of Schema's.", "nullable": true }, "anonymizedMethods": { "type": "array", "items": { "type": "string" }, "description": "Gets or Sets the list of AnonymizedMethods's.", "nullable": true }, "workbenches": { "type": "array", "items": { "type": "string" }, "description": "Gets or Sets the list of Workbenches.", "nullable": true }, "repositories": { "type": "array", "items": { "type": "string" }, "description": "Gets or Sets the list of Repositorie's.", "nullable": true }, "etlApplication": { "type": "string", "description": "Gets or Sets {etlApplication} property.", "nullable": true }, "configuration": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.UseCaseConfig" }, "additionalProperties": { "description": "Represents an abstract JSON token.", "nullable": true }, "metadataProperties": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.MetadataProperties" } }, "additionalProperties": false, "description": "This Class defines the structure of the UseCase Json." }, "VWAC.DataPlatform.Shared.DataContracts.UseCasePipelinesConnectionInfo": { "type": "object", "properties": { "useCaseId": { "type": "string", "description": "Gets or sets {useCaseId} of Mapping table object.", "nullable": true }, "pipeline": { "type": "array", "items": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.DataContracts.StreamingPipelineConnectionInfo" }, "description": "Gets or sets {pipeline} details.", "nullable": true } }, "additionalProperties": false, "description": "Representation of {UseCasePipelinesInfo} for the Pipeline Mapping table object." }, "VWAC.DataPlatform.Shared.DataContracts.VehicleProperty": { "enum": [ "VIN", "Brand" ], "type": "string", "description": "Vehicle metadata properties." }, "VWAC.DataPlatform.Shared.Internal.ClaimDocument": { "type": "object", "properties": { "userId": { "type": "string", "nullable": true }, "vehicleId": { "type": "string", "nullable": true }, "entityId": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.Internal.Constants+ClaimEntityId" }, "claims": { "type": "array", "items": { "$ref": "#/components/schemas/VWAC.DataPlatform.Shared.Internal.ClaimEntity" }, "nullable": true } }, "additionalProperties": false }, "VWAC.DataPlatform.Shared.Internal.ClaimEntity": { "type": "object", "properties": { "name": { "type": "string", "nullable": true }, "values": { "type": "array", "items": { "type": "string" }, "nullable": true }, "claimType": { "type": "string", "nullable": true }, "expiration": { "type": "string", "format": "date-time" }, "daysInAdvanceToNotifyExpiration": { "type": "array", "items": { "type": "integer", "format": "int32" }, "nullable": true } }, "additionalProperties": false }, "VWAC.DataPlatform.Shared.Internal.Constants+Action": { "enum": [ "Create", "Update", "Delete" ], "type": "string" }, "VWAC.DataPlatform.Shared.Internal.Constants+ClaimEntityId": { "enum": [ "DataPlatformStorage", "DataPlatformProcessing" ], "type": "string" } }, "securitySchemes": { "Bearer": { "type": "http", "description": "Specify authorization token without Bearer keyword", "scheme": "Bearer", "bearerFormat": "JWT" } } }, "security": [ { "Bearer": [ ] } ] }