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
}Get all the registered blueprints
required | object (BlueprintSearchOptions) |
[- {
- "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
}