Download OpenAPI specification:Download
This page describe tha API exposed by ODM Platform's Blueprint Service
The Blueprint Module of the Open Data Mesh platform manages the lifecycle of a blueprint. Specifically, it handles the creation of a blueprint, its update and the generation of a project from the blueprint given the right set of parameters
Get the blueprint identified by 'id'
id required | integer <int64> Identifier of the blueprint |
{- "id": 0,
- "name": "string",
- "version": "string",
- "displayName": "string",
- "description": "string",
- "repositoryProvider": "AZURE_DEVOPS",
- "repositoryUrl": "string",
- "blueprintDirectory": "string",
- "blueprintParams": "string",
- "organization": "string",
- "projectId": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
Update the provided blueprint
id required | integer <int64> Identifier of the blueprint to update |
A blueprint object
id | integer <int64> Auto generated Blueprint ID |
name | string Blueprint name |
version | string Blueprint version |
displayName | string Blueprint name to display |
description | string Blueprint description |
repositoryProvider | string Enum: "AZURE_DEVOPS" "GITHUB" Repository Provider (e.g., Azure, GitHub, GitLab, ...) |
repositoryUrl | string SSH URL of the repository of the blueprint |
blueprintDirectory | string The top-level directory of the repository where the blueprint is located |
blueprintParams | string The JSON description of the parameters of the blueprint saved as a String |
organization | string User/Organization of the blueprint repo in the Git provider |
projectId | string ID of the project in the Git provider [Optional, needed for AzureDevOps] |
createdAt | string <date-time> Timestamp of the Blueprint creation |
updatedAt | string <date-time> Timestamp of the Blueprint update |
Example of object to update an existing blueprint
{- "id": 1,
- "name": "blueprint1 - updated",
- "version": "1.0.1",
- "displayName": "first blueprint",
- "description": "description of blueprint",
- "repositoryProvider": "GITHUB",
- "repositoryUrl": "git@github.com:opendatamesh-initiative/blueprint.git",
- "blueprintDirectory": "blueprint1.0.1-dir",
- "organization": "opendatamesh-initiative"
}
blueprintUpdate
{- "id": 1,
- "name": "blueprint1 - updated",
- "version": "1.0.1",
- "displayName": "first blueprint",
- "description": "description of blueprint",
- "repositoryProvider": "GITHUB",
- "repositoryUrl": "git@github.com:opendatamesh-initiative/blueprint.git",
- "blueprintDirectory": "blueprint1.0.1-dir",
- "organization": "opendatamesh-initiative"
}
Delete the blueprint identified by 'id'
id required | integer <int64> Identifier of the blueprint to delete |
{- "status": 0,
- "code": "string",
- "description": "string",
- "message": "string",
- "path": "string",
- "timestamp": 0
}
[- {
- "id": 0,
- "name": "string",
- "version": "string",
- "displayName": "string",
- "description": "string",
- "repositoryProvider": "AZURE_DEVOPS",
- "repositoryUrl": "string",
- "blueprintDirectory": "string",
- "blueprintParams": "string",
- "organization": "string",
- "projectId": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
]
Register the provided blueprint
checkBlueprint | boolean |
A blueprint object
id | integer <int64> Auto generated Blueprint ID |
name | string Blueprint name |
version | string Blueprint version |
displayName | string Blueprint name to display |
description | string Blueprint description |
repositoryProvider | string Enum: "AZURE_DEVOPS" "GITHUB" Repository Provider (e.g., Azure, GitHub, GitLab, ...) |
repositoryUrl | string SSH URL of the repository of the blueprint |
blueprintDirectory | string The top-level directory of the repository where the blueprint is located |
blueprintParams | string The JSON description of the parameters of the blueprint saved as a String |
organization | string User/Organization of the blueprint repo in the Git provider |
projectId | string ID of the project in the Git provider [Optional, needed for AzureDevOps] |
createdAt | string <date-time> Timestamp of the Blueprint creation |
updatedAt | string <date-time> Timestamp of the Blueprint update |
Example of a blueprint for GitHub
{- "name": "blueprint1",
- "version": "1.0.0",
- "displayName": "first blueprint",
- "description": "description of blueprint",
- "repositoryProvider": "GITHUB",
- "repositoryUrl": "git@github.com:opendatamesh-initiative/blueprint.git",
- "blueprintDirectory": "blueprint-dir",
- "organization": "opendatamesh-initiative"
}
github
{- "name": "blueprint1",
- "version": "1.0.0",
- "displayName": "first blueprint",
- "description": "description of blueprint",
- "repositoryProvider": "GITHUB",
- "repositoryUrl": "git@github.com:opendatamesh-initiative/blueprint.git",
- "blueprintDirectory": "blueprint-dir",
- "organization": "opendatamesh-initiative"
}
Create a project templating the blueprint identified by 'id' with the given parameters (i.e., 'config' object)
id required | integer <int64> Identifier of the blueprint to instance |
A config object
targetRepo | string Name of the target repository |
createRepo | boolean Boolean [true/false] to specify whether to create the repository, default 'true' |
object List of key-value pairs representing the parameters needed for templating a blueprint |
description of config example
{- "targetRepo": "projectFromBlueprint",
- "createRepo": true,
- "config": {
- "parameter1": "value of parameter 2",
- "parameter2": "value of parameter 2",
- "parameter3": "value of parameter 3"
}
}
{- "status": 0,
- "code": "string",
- "description": "string",
- "message": "string",
- "path": "string",
- "timestamp": 0
}