@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api BlueprintClient
@base https://management.azure.com
@version 2018-11-01-preview
@auth OAuth2
@common_fields {api-version: any # Client API Version., resourceScope: any # The scope of the resource. Valid scopes are: management group (format: '/providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: '/subscriptions/{subscriptionId}').}
@endpoints 14
@toc {resourceScope}(14)

@endpoint PUT /{resourceScope}/providers/Microsoft.Blueprint/blueprints/{blueprintName}
@desc Create or update a blueprint definition.
@required {blueprintName: any # Name of the blueprint definition., blueprint: map # Blueprint definition.}
@returns(201) Created -- blueprint definition saved.

@endpoint GET /{resourceScope}/providers/Microsoft.Blueprint/blueprints/{blueprintName}
@desc Get a blueprint definition.
@required {blueprintName: any # Name of the blueprint definition.}
@returns(200) OK -- blueprint definition retrieved.

@endpoint DELETE /{resourceScope}/providers/Microsoft.Blueprint/blueprints/{blueprintName}
@desc Delete a blueprint definition.
@required {blueprintName: any # Name of the blueprint definition.}
@returns(200) OK -- blueprint definition deleted.
@returns(204) No Content

@endpoint GET /{resourceScope}/providers/Microsoft.Blueprint/blueprints
@desc List blueprint definitions.
@returns(200) OK -- retrieved list of blueprint definitions.

@endpoint PUT /{resourceScope}/providers/Microsoft.Blueprint/blueprints/{blueprintName}/artifacts/{artifactName}
@desc Create or update blueprint artifact.
@required {blueprintName: any # Name of the blueprint definition., artifactName: any # Name of the blueprint artifact., artifact: map # Blueprint artifact to create or update.}
@returns(201) Created -- blueprint artifact created/updated.

@endpoint GET /{resourceScope}/providers/Microsoft.Blueprint/blueprints/{blueprintName}/artifacts/{artifactName}
@desc Get a blueprint artifact.
@required {blueprintName: any # Name of the blueprint definition., artifactName: any # Name of the blueprint artifact.}
@returns(200) OK -- blueprint artifact retrieved.

@endpoint DELETE /{resourceScope}/providers/Microsoft.Blueprint/blueprints/{blueprintName}/artifacts/{artifactName}
@desc Delete a blueprint artifact.
@required {blueprintName: any # Name of the blueprint definition., artifactName: any # Name of the blueprint artifact.}
@returns(200) OK -- blueprint artifact deleted.
@returns(204) No Content

@endpoint GET /{resourceScope}/providers/Microsoft.Blueprint/blueprints/{blueprintName}/artifacts
@desc List artifacts for a given blueprint definition.
@required {blueprintName: any # Name of the blueprint definition.}
@returns(200) OK -- blueprint artifacts retrieved.

@endpoint PUT /{resourceScope}/providers/Microsoft.Blueprint/blueprints/{blueprintName}/versions/{versionId}
@desc Publish a new version of the blueprint definition with the latest artifacts. Published blueprint definitions are immutable.
@required {blueprintName: any # Name of the blueprint definition., versionId: any # Version of the published blueprint definition.}
@optional {publishedBlueprint: map # Published Blueprint to create or update.}
@returns(201) Created -- blueprint definition published.

@endpoint GET /{resourceScope}/providers/Microsoft.Blueprint/blueprints/{blueprintName}/versions/{versionId}
@desc Get a published version of a blueprint definition.
@required {blueprintName: any # Name of the blueprint definition., versionId: any # Version of the published blueprint definition.}
@returns(200) OK -- published blueprint definition retrieved.

@endpoint DELETE /{resourceScope}/providers/Microsoft.Blueprint/blueprints/{blueprintName}/versions/{versionId}
@desc Delete a published version of a blueprint definition.
@required {blueprintName: any # Name of the blueprint definition., versionId: any # Version of the published blueprint definition.}
@returns(200) OK -- published version of blueprint definition deleted.
@returns(204) No Content

@endpoint GET /{resourceScope}/providers/Microsoft.Blueprint/blueprints/{blueprintName}/versions
@desc List published versions of given blueprint definition.
@required {blueprintName: any # Name of the blueprint definition.}
@returns(200) OK -- all published versions of blueprint definition retrieved.

@endpoint GET /{resourceScope}/providers/Microsoft.Blueprint/blueprints/{blueprintName}/versions/{versionId}/artifacts/{artifactName}
@desc Get an artifact for a published blueprint definition.
@required {blueprintName: any # Name of the blueprint definition., versionId: any # Version of the published blueprint definition., artifactName: any # Name of the blueprint artifact.}
@returns(200) OK -- artifact of published blueprint definition retrieved.

@endpoint GET /{resourceScope}/providers/Microsoft.Blueprint/blueprints/{blueprintName}/versions/{versionId}/artifacts
@desc List artifacts for a version of a published blueprint definition.
@required {blueprintName: any # Name of the blueprint definition., versionId: any # Version of the published blueprint definition.}
@returns(200) OK -- artifacts of a version of published blueprint definition retrieved.

@end
