Action Logs
Bitbucket Server
Catalog News Articles
Catalog Technologies
Code Repos
Comment Replies
Diagram Contents
Diagrams
Flows
Health
Landscape Templates
Landscape Thumbnails
Model Connections
Model Objects
News
Organization Billing
Organization Icons
Organization Landscapes
Organizations
Organization Technologies
Organization User Invites
Organization Users
Share Link
Share Link Options
Support
User
User Notifications
User Goals
Version Reverts
Create
curl --request POST \
--url https://api.icepanel.io/v1/organizations/{organizationId}/landscapes \
--header 'Authorization: <authorization>' \
--header 'Content-Type: application/json' \
--data '{
"name": "<string>",
"scheduledVersions": true,
"backstageEntities": {
"apis": [
[
{
"apiVersion": "backstage.io/v1alpha1",
"kind": "API",
"metadata": {
"name": "artist-api",
"description": "Retrieve artist details",
"labels": {
"product_name": "Random value Generator"
},
"annotations": {
"docs": "https://github.com/..../tree/develop/doc"
}
},
"spec": {
"type": "openapi",
"lifecycle": "production",
"owner": "artist-relations-team",
"system": "artist-engagement-portal",
"definition": "openapi: \"3.0.0\"\ninfo:..."
}
}
]
],
"components": [
[
{
"apiVersion": "backstage.io/v1alpha1",
"kind": "Component",
"metadata": {
"name": "LoremService",
"description": "Creates Lorems like a pro.",
"labels": {
"product_name": "Random value Generator"
},
"annotations": {
"docs": "https://github.com/..../tree/develop/doc"
}
},
"spec": {
"type": "service",
"lifecycle": "production",
"owner": "tools"
}
}
]
],
"domains": [
[
{
"apiVersion": "backstage.io/v1alpha1",
"kind": "Domain",
"metadata": {
"name": "artists",
"description": "Everything about artists"
},
"spec": {
"owner": "artist-relations-team"
}
}
]
],
"resources": [
[
{
"apiVersion": "backstage.io/v1alpha1",
"kind": "Resource",
"metadata": {
"name": "artists-db",
"description": "Stores artist details"
},
"spec": {
"type": "database",
"owner": "artist-relations-team",
"system": "artist-engagement-portal"
}
}
]
],
"systems": [
[
{
"apiVersion": "backstage.io/v1alpha1",
"kind": "System",
"metadata": {
"name": "artist-engagement-portal",
"description": "Handy tools to keep artists in the loop"
},
"spec": {
"owner": "artist-relations-team",
"domain": "artists"
}
}
]
]
},
"structurizrWorkspace": {
"id": 123,
"name": "<string>",
"description": "<string>",
"version": "<string>",
"thumbnail": "<string>",
"lastModifiedDate": "<string>",
"lastModifiedUser": "<string>",
"lastModifiedAgent": "<string>",
"model": {
"enterprise": {
"name": "<string>"
},
"people": [
{
"id": "<string>",
"name": "<string>",
"description": "<string>",
"tags": "<string>",
"url": "<string>",
"location": "External",
"group": "<string>",
"properties": {},
"relationships": [
{
"id": "<string>",
"description": "<string>",
"tags": "<string>",
"url": "<string>",
"sourceId": "<string>",
"destinationId": "<string>",
"technology": "<string>",
"interactionStyle": "Synchronous",
"linkedRelationshipId": "<string>"
}
]
}
],
"softwareSystems": [
{
"id": "<string>",
"name": "<string>",
"description": "<string>",
"location": "External",
"tags": "<string>",
"url": "<string>",
"containers": [
{
"id": "<string>",
"name": "<string>",
"description": "<string>",
"technology": "<string>",
"tags": "<string>",
"url": "<string>",
"components": [
{
"id": "<string>",
"name": "<string>",
"description": "<string>",
"technology": "<string>",
"tags": "<string>",
"url": "<string>",
"group": "<string>",
"properties": {},
"relationships": [
{
"id": "<string>",
"description": "<string>",
"tags": "<string>",
"url": "<string>",
"sourceId": "<string>",
"destinationId": "<string>",
"technology": "<string>",
"interactionStyle": "Synchronous",
"linkedRelationshipId": "<string>"
}
],
"documentation": {
"sections": [
{
"content": "<string>",
"format": "Markdown",
"order": 123
}
],
"decisions": [
{
"id": "<string>",
"date": "<string>",
"status": "Proposed",
"title": "<string>",
"content": "<string>",
"format": "Markdown",
"elementId": "<string>"
}
],
"images": [
{
"name": "<string>",
"content": "<string>",
"type": "<string>"
}
]
}
}
],
"group": "<string>",
"properties": {},
"relationships": [
{
"id": "<string>",
"description": "<string>",
"tags": "<string>",
"url": "<string>",
"sourceId": "<string>",
"destinationId": "<string>",
"technology": "<string>",
"interactionStyle": "Synchronous",
"linkedRelationshipId": "<string>"
}
],
"documentation": {
"sections": [
{
"content": "<string>",
"format": "Markdown",
"order": 123
}
],
"decisions": [
{
"id": "<string>",
"date": "<string>",
"status": "Proposed",
"title": "<string>",
"content": "<string>",
"format": "Markdown",
"elementId": "<string>"
}
],
"images": [
{
"name": "<string>",
"content": "<string>",
"type": "<string>"
}
]
}
}
],
"group": "<string>",
"properties": {},
"relationships": [
{
"id": "<string>",
"description": "<string>",
"tags": "<string>",
"url": "<string>",
"sourceId": "<string>",
"destinationId": "<string>",
"technology": "<string>",
"interactionStyle": "Synchronous",
"linkedRelationshipId": "<string>"
}
],
"documentation": {
"sections": [
{
"content": "<string>",
"format": "Markdown",
"order": 123
}
],
"decisions": [
{
"id": "<string>",
"date": "<string>",
"status": "Proposed",
"title": "<string>",
"content": "<string>",
"format": "Markdown",
"elementId": "<string>"
}
],
"images": [
{
"name": "<string>",
"content": "<string>",
"type": "<string>"
}
]
}
}
],
"deploymentNodes": [
{
"id": "<string>",
"name": "<string>",
"description": "<string>",
"technology": "<string>",
"environment": "<string>",
"instances": "<string>",
"tags": "<string>",
"url": "<string>",
"children": [
{}
],
"infrastructureNodes": [
{
"id": "<string>",
"name": "<string>",
"description": "<string>",
"technology": "<string>",
"environment": "<string>",
"tags": "<string>",
"url": "<string>",
"properties": {},
"relationships": [
{
"id": "<string>",
"description": "<string>",
"tags": "<string>",
"url": "<string>",
"sourceId": "<string>",
"destinationId": "<string>",
"technology": "<string>",
"interactionStyle": "Synchronous",
"linkedRelationshipId": "<string>"
}
]
}
],
"softwareSystemInstances": [
{
"id": "<string>",
"softwareSystemId": "<string>",
"instanceId": 123,
"environment": "<string>",
"tags": "<string>",
"properties": {},
"relationships": [
{
"id": "<string>",
"description": "<string>",
"tags": "<string>",
"url": "<string>",
"sourceId": "<string>",
"destinationId": "<string>",
"technology": "<string>",
"interactionStyle": "Synchronous",
"linkedRelationshipId": "<string>"
}
],
"healthChecks": [
{
"name": "<string>",
"url": "<string>",
"interval": 123,
"timeout": 123,
"headers": {}
}
]
}
],
"containerInstances": [
{
"id": "<string>",
"containerId": "<string>",
"instanceId": 123,
"environment": "<string>",
"tags": "<string>",
"properties": {},
"relationships": [
{
"id": "<string>",
"description": "<string>",
"tags": "<string>",
"url": "<string>",
"sourceId": "<string>",
"destinationId": "<string>",
"technology": "<string>",
"interactionStyle": "Synchronous",
"linkedRelationshipId": "<string>"
}
],
"healthChecks": [
{
"name": "<string>",
"url": "<string>",
"interval": 123,
"timeout": 123,
"headers": {}
}
]
}
],
"properties": {},
"relationships": [
{
"id": "<string>",
"description": "<string>",
"tags": "<string>",
"url": "<string>",
"sourceId": "<string>",
"destinationId": "<string>",
"technology": "<string>",
"interactionStyle": "Synchronous",
"linkedRelationshipId": "<string>"
}
]
}
]
},
"views": {
"systemLandscapeViews": [
{
"title": "<string>",
"description": "<string>",
"key": "<string>",
"paperSize": "A6_Portrait",
"dimensions": {
"width": 123,
"height": 123
},
"automaticLayout": {
"rankDirection": "TopBottom",
"rankSeparation": 123,
"nodeSeparation": 123,
"edgeSeparation": 123,
"vertices": true
},
"enterpriseBoundaryVisible": true,
"elements": [
{
"id": "<string>",
"x": 123,
"y": 123
}
],
"relationships": [
{
"id": "<string>",
"description": "<string>",
"response": true,
"order": "<string>",
"vertices": [
{
"x": 123,
"y": 123
}
],
"routing": "Direct",
"position": 123
}
],
"animations": [
{
"order": 123,
"elements": [
"<string>"
],
"relationships": [
"<string>"
]
}
]
}
],
"systemContextViews": [
{
"title": "<string>",
"description": "<string>",
"key": "<string>",
"softwareSystemId": "<string>",
"paperSize": "A6_Portrait",
"dimensions": {
"width": 123,
"height": 123
},
"automaticLayout": {
"rankDirection": "TopBottom",
"rankSeparation": 123,
"nodeSeparation": 123,
"edgeSeparation": 123,
"vertices": true
},
"enterpriseBoundaryVisible": true,
"elements": [
{
"id": "<string>",
"x": 123,
"y": 123
}
],
"relationships": [
{
"id": "<string>",
"description": "<string>",
"response": true,
"order": "<string>",
"vertices": [
{
"x": 123,
"y": 123
}
],
"routing": "Direct",
"position": 123
}
],
"animations": [
{
"order": 123,
"elements": [
"<string>"
],
"relationships": [
"<string>"
]
}
]
}
],
"containerViews": [
{
"title": "<string>",
"description": "<string>",
"key": "<string>",
"softwareSystemId": "<string>",
"paperSize": "A6_Portrait",
"dimensions": {
"width": 123,
"height": 123
},
"automaticLayout": {
"rankDirection": "TopBottom",
"rankSeparation": 123,
"nodeSeparation": 123,
"edgeSeparation": 123,
"vertices": true
},
"elements": [
{
"id": "<string>",
"x": 123,
"y": 123
}
],
"relationships": [
{
"id": "<string>",
"description": "<string>",
"response": true,
"order": "<string>",
"vertices": [
{
"x": 123,
"y": 123
}
],
"routing": "Direct",
"position": 123
}
],
"animations": [
{
"order": 123,
"elements": [
"<string>"
],
"relationships": [
"<string>"
]
}
],
"externalSoftwareSystemBoundariesVisible": true
}
],
"componentViews": [
{
"title": "<string>",
"description": "<string>",
"key": "<string>",
"containerId": "<string>",
"paperSize": "A6_Portrait",
"dimensions": {
"width": 123,
"height": 123
},
"automaticLayout": {
"rankDirection": "TopBottom",
"rankSeparation": 123,
"nodeSeparation": 123,
"edgeSeparation": 123,
"vertices": true
},
"elements": [
{
"id": "<string>",
"x": 123,
"y": 123
}
],
"relationships": [
{
"id": "<string>",
"description": "<string>",
"response": true,
"order": "<string>",
"vertices": [
{
"x": 123,
"y": 123
}
],
"routing": "Direct",
"position": 123
}
],
"animations": [
{
"order": 123,
"elements": [
"<string>"
],
"relationships": [
"<string>"
]
}
],
"externalContainerBoundariesVisible": true
}
],
"dynamicViews": [
{
"title": "<string>",
"description": "<string>",
"key": "<string>",
"elementId": "<string>",
"paperSize": "A6_Portrait",
"dimensions": {
"width": 123,
"height": 123
},
"automaticLayout": {
"rankDirection": "TopBottom",
"rankSeparation": 123,
"nodeSeparation": 123,
"edgeSeparation": 123,
"vertices": true
},
"elements": [
{
"id": "<string>",
"x": 123,
"y": 123
}
],
"relationships": [
{
"id": "<string>",
"description": "<string>",
"response": true,
"order": "<string>",
"vertices": [
{
"x": 123,
"y": 123
}
],
"routing": "Direct",
"position": 123
}
],
"externalBoundariesVisible": true
}
],
"deploymentView": [
{
"title": "<string>",
"description": "<string>",
"key": "<string>",
"softwareSystemId": "<string>",
"environment": "<string>",
"paperSize": "A6_Portrait",
"dimensions": {
"width": 123,
"height": 123
},
"automaticLayout": {
"rankDirection": "TopBottom",
"rankSeparation": 123,
"nodeSeparation": 123,
"edgeSeparation": 123,
"vertices": true
},
"elements": [
{
"id": "<string>",
"x": 123,
"y": 123
}
],
"relationships": [
{
"id": "<string>",
"description": "<string>",
"response": true,
"order": "<string>",
"vertices": [
{
"x": 123,
"y": 123
}
],
"routing": "Direct",
"position": 123
}
],
"animations": [
{
"order": 123,
"elements": [
"<string>"
],
"relationships": [
"<string>"
]
}
]
}
],
"filteredViews": [
{
"title": "<string>",
"description": "<string>",
"key": "<string>",
"baseViewKey": "<string>",
"mode": "Include",
"tags": [
"<string>"
]
}
],
"configuration": {
"styles": {
"elements": [
{
"tag": "<string>",
"width": 123,
"height": 123,
"background": "<string>",
"stroke": "<string>",
"strokeWidth": 123,
"color": "<string>",
"fontSize": 123,
"shape": "Box",
"icon": "<string>",
"border": "Solid",
"opacity": 123,
"metadata": true,
"description": true
}
],
"relationships": [
{
"tag": "<string>",
"thickness": 123,
"color": "<string>",
"fontSize": 123,
"width": 123,
"dashed": true,
"routing": "Direct",
"position": 123,
"opacity": 123
}
]
},
"lastSavedView": "<string>",
"defaultView": "<string>",
"themes": [
"<string>"
],
"branding": {
"logo": "<string>",
"font": {
"name": "<string>",
"url": "<string>"
}
},
"terminology": {
"enterprise": "<string>",
"person": "<string>",
"softwareSystem": "<string>",
"container": "<string>",
"component": "<string>",
"code": "<string>",
"deploymentNode": "<string>",
"relationship": "<string>"
},
"metadataSymbols": "SquareBrackets"
}
},
"documentation": {
"sections": [
{
"content": "<string>",
"format": "Markdown",
"order": 123
}
],
"decisions": [
{
"id": "<string>",
"date": "<string>",
"status": "Proposed",
"title": "<string>",
"content": "<string>",
"format": "Markdown",
"elementId": "<string>"
}
],
"images": [
{
"name": "<string>",
"content": "<string>",
"type": "<string>"
}
]
},
"configuration": {
"users": [
{
"username": "<string>",
"role": "ReadWrite"
}
]
},
"properties": {}
},
"templateId": "<string>"
}'
{
"landscape": {
"name": "<string>",
"scheduledVersions": true,
"organizationId": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"createdBy": "user",
"createdById": "<string>",
"id": "<string>",
"updatedAt": "2023-11-07T05:31:56Z",
"updatedBy": "user",
"updatedById": "<string>"
},
"version": {
"modelHandleId": "<string>",
"name": "<string>",
"notes": "<string>",
"completedAt": "2023-11-07T05:31:56Z",
"createdAt": "2023-11-07T05:31:56Z",
"createdBy": "user",
"createdById": "<string>",
"diagramHandleIds": [
"<string>"
],
"id": "<string>",
"landscapeId": "<string>",
"tags": [
"<string>"
],
"updatedAt": "2023-11-07T05:31:56Z",
"updatedBy": "user",
"updatedById": "<string>"
}
}
Headers
Path Parameters
Body
The parts of the format that's common to all versions/kinds of entity.
An API describes an interface that can be exposed by a component. The API can be defined in different formats, like OpenAPI, AsyncAPI, GraphQL, gRPC, or other formats.
Metadata fields common to all versions/kinds of entity.
The name of the entity. Must be unique within the catalog at any given point in time, for any given namespace + kind pair.
["metadata-proxy"]
A globally unique ID for the entity. This field can not be set by the user at creation time, and the server will reject an attempt to do so. The field will be populated in read operations. The field can (optionally) be specified when performing update or delete operations, but the server is free to reject requests that do so in such a way that it breaks semantics.
["e01199ab-08cc-44c2-8e19-5c29ded82521"]
An opaque string that changes for each update operation to any part of the entity, including metadata. This field can not be set by the user at creation time, and the server will reject an attempt to do so. The field will be populated in read operations. The field can (optionally) be specified when performing update or delete operations, and the server will then reject the operation if it does not match the current stored value.
["lsndfkjsndfkjnsdfkjnsd=="]
The namespace that the entity belongs to.
["default", "admin"]
A display name of the entity, to be presented in user interfaces instead of the name property, when available.
["React SSR Template"]
A short (typically relatively few words, on one line) description of the entity.
Key/value pairs of identifying information attached to the entity.
Key/value pairs of non-identifying auxiliary information attached to the entity.
A list of single-valued strings, to for example classify catalog entities in various ways.
A list of external hyperlinks related to the entity. Links can provide additional contextual information that may be located outside of Backstage itself. For example, an admin dashboard or external CMS page.
A url in a standard uri format.
["https://admin.example-org.com"]
A user friendly display name for the link.
["Admin Dashboard"]
A key representing a visual icon to be displayed in the UI.
["dashboard"]
An optional value to categorize links into specific groups.
[
"runbook",
"documentation",
"logs",
"dashboard"
]
[
{
"uid": "e01199ab-08cc-44c2-8e19-5c29ded82521",
"etag": "lsndfkjsndfkjnsdfkjnsd==",
"name": "my-component-yay",
"namespace": "the-namespace",
"labels": { "backstage.io/custom": "ValueStuff" },
"annotations": { "example.com/bindings": "are-secret" },
"tags": ["java", "data"]
}
]
backstage.io/v1alpha1
, backstage.io/v1beta1
API
The type of the API definition.
["openapi", "asyncapi", "graphql", "grpc"]
The lifecycle state of the API.
["experimental", "production", "deprecated"]
An entity reference to the owner of the API.
[
"artist-relations-team",
"user:john.johnson"
]
The definition of the API, based on the format defined by the type.
An entity reference to the system that the API belongs to.
The relations that this entity has with other entities.
A directed relation from one entity to another.
The type of relation.
A reference by name to another entity.
The entity ref of the target of this relation.
The current status of the entity, as claimed by various sources.
A specific status item on a well known format.
The status level / severity of the status item.
info
, warning
, error
A brief message describing the status, intended for human consumption.
An optional serialized error object related to the status.
A Component describes a software component. It is typically intimately linked to the source code that constitutes the component, and should be what a developer may regard a "unit of software", usually with a distinct deployable or linkable artifact.
Metadata fields common to all versions/kinds of entity.
The name of the entity. Must be unique within the catalog at any given point in time, for any given namespace + kind pair.
["metadata-proxy"]
A globally unique ID for the entity. This field can not be set by the user at creation time, and the server will reject an attempt to do so. The field will be populated in read operations. The field can (optionally) be specified when performing update or delete operations, but the server is free to reject requests that do so in such a way that it breaks semantics.
["e01199ab-08cc-44c2-8e19-5c29ded82521"]
An opaque string that changes for each update operation to any part of the entity, including metadata. This field can not be set by the user at creation time, and the server will reject an attempt to do so. The field will be populated in read operations. The field can (optionally) be specified when performing update or delete operations, and the server will then reject the operation if it does not match the current stored value.
["lsndfkjsndfkjnsdfkjnsd=="]
The namespace that the entity belongs to.
["default", "admin"]
A display name of the entity, to be presented in user interfaces instead of the name property, when available.
["React SSR Template"]
A short (typically relatively few words, on one line) description of the entity.
Key/value pairs of identifying information attached to the entity.
Key/value pairs of non-identifying auxiliary information attached to the entity.
A list of single-valued strings, to for example classify catalog entities in various ways.
A list of external hyperlinks related to the entity. Links can provide additional contextual information that may be located outside of Backstage itself. For example, an admin dashboard or external CMS page.
A url in a standard uri format.
["https://admin.example-org.com"]
A user friendly display name for the link.
["Admin Dashboard"]
A key representing a visual icon to be displayed in the UI.
["dashboard"]
An optional value to categorize links into specific groups.
[
"runbook",
"documentation",
"logs",
"dashboard"
]
[
{
"uid": "e01199ab-08cc-44c2-8e19-5c29ded82521",
"etag": "lsndfkjsndfkjnsdfkjnsd==",
"name": "my-component-yay",
"namespace": "the-namespace",
"labels": { "backstage.io/custom": "ValueStuff" },
"annotations": { "example.com/bindings": "are-secret" },
"tags": ["java", "data"]
}
]
backstage.io/v1alpha1
, backstage.io/v1beta1
Component
The type of component.
["service", "website", "library"]
The lifecycle state of the component.
["experimental", "production", "deprecated"]
An entity reference to the owner of the component.
[
"artist-relations-team",
"user:john.johnson"
]
An entity reference to the system that the component belongs to.
An entity reference to another component of which the component is a part.
An array of entity references to the APIs that are provided by the component.
An array of entity references to the APIs that are consumed by the component.
An array of references to other entities that the component depends on to function.
The relations that this entity has with other entities.
A directed relation from one entity to another.
The type of relation.
A reference by name to another entity.
The kind field of the entity.
The metadata.namespace field of the entity.
The metadata.name field of the entity.
The entity ref of the target of this relation.
The current status of the entity, as claimed by various sources.
A specific status item on a well known format.
The status level / severity of the status item.
info
, warning
, error
A brief message describing the status, intended for human consumption.
An optional serialized error object related to the status.
A Domain groups a collection of systems that share terminology, domain models, business purpose, or documentation, i.e. form a bounded context.
Metadata fields common to all versions/kinds of entity.
The name of the entity. Must be unique within the catalog at any given point in time, for any given namespace + kind pair.
["metadata-proxy"]
A globally unique ID for the entity. This field can not be set by the user at creation time, and the server will reject an attempt to do so. The field will be populated in read operations. The field can (optionally) be specified when performing update or delete operations, but the server is free to reject requests that do so in such a way that it breaks semantics.
["e01199ab-08cc-44c2-8e19-5c29ded82521"]
An opaque string that changes for each update operation to any part of the entity, including metadata. This field can not be set by the user at creation time, and the server will reject an attempt to do so. The field will be populated in read operations. The field can (optionally) be specified when performing update or delete operations, and the server will then reject the operation if it does not match the current stored value.
["lsndfkjsndfkjnsdfkjnsd=="]
The namespace that the entity belongs to.
["default", "admin"]
A display name of the entity, to be presented in user interfaces instead of the name property, when available.
["React SSR Template"]
A short (typically relatively few words, on one line) description of the entity.
Key/value pairs of identifying information attached to the entity.
Key/value pairs of non-identifying auxiliary information attached to the entity.
A list of single-valued strings, to for example classify catalog entities in various ways.
A list of external hyperlinks related to the entity. Links can provide additional contextual information that may be located outside of Backstage itself. For example, an admin dashboard or external CMS page.
A url in a standard uri format.
["https://admin.example-org.com"]
A user friendly display name for the link.
["Admin Dashboard"]
A key representing a visual icon to be displayed in the UI.
["dashboard"]
An optional value to categorize links into specific groups.
[
"runbook",
"documentation",
"logs",
"dashboard"
]
[
{
"uid": "e01199ab-08cc-44c2-8e19-5c29ded82521",
"etag": "lsndfkjsndfkjnsdfkjnsd==",
"name": "my-component-yay",
"namespace": "the-namespace",
"labels": { "backstage.io/custom": "ValueStuff" },
"annotations": { "example.com/bindings": "are-secret" },
"tags": ["java", "data"]
}
]
backstage.io/v1alpha1
, backstage.io/v1beta1
Domain
An entity reference to the owner of the component.
[
"artist-relations-team",
"user:john.johnson"
]
The relations that this entity has with other entities.
A directed relation from one entity to another.
The type of relation.
A reference by name to another entity.
The kind field of the entity.
The metadata.namespace field of the entity.
The metadata.name field of the entity.
The entity ref of the target of this relation.
The current status of the entity, as claimed by various sources.
A specific status item on a well known format.
The status level / severity of the status item.
info
, warning
, error
A brief message describing the status, intended for human consumption.
An optional serialized error object related to the status.
A resource describes the infrastructure a system needs to operate, like BigTable databases, Pub/Sub topics, S3 buckets or CDNs. Modelling them together with components and systems allows to visualize resource footprint, and create tooling around them.
Metadata fields common to all versions/kinds of entity.
The name of the entity. Must be unique within the catalog at any given point in time, for any given namespace + kind pair.
["metadata-proxy"]
A globally unique ID for the entity. This field can not be set by the user at creation time, and the server will reject an attempt to do so. The field will be populated in read operations. The field can (optionally) be specified when performing update or delete operations, but the server is free to reject requests that do so in such a way that it breaks semantics.
["e01199ab-08cc-44c2-8e19-5c29ded82521"]
An opaque string that changes for each update operation to any part of the entity, including metadata. This field can not be set by the user at creation time, and the server will reject an attempt to do so. The field will be populated in read operations. The field can (optionally) be specified when performing update or delete operations, and the server will then reject the operation if it does not match the current stored value.
["lsndfkjsndfkjnsdfkjnsd=="]
The namespace that the entity belongs to.
["default", "admin"]
A display name of the entity, to be presented in user interfaces instead of the name property, when available.
["React SSR Template"]
A short (typically relatively few words, on one line) description of the entity.
Key/value pairs of identifying information attached to the entity.
Key/value pairs of non-identifying auxiliary information attached to the entity.
A list of single-valued strings, to for example classify catalog entities in various ways.
A list of external hyperlinks related to the entity. Links can provide additional contextual information that may be located outside of Backstage itself. For example, an admin dashboard or external CMS page.
A url in a standard uri format.
["https://admin.example-org.com"]
A user friendly display name for the link.
["Admin Dashboard"]
A key representing a visual icon to be displayed in the UI.
["dashboard"]
An optional value to categorize links into specific groups.
[
"runbook",
"documentation",
"logs",
"dashboard"
]
[
{
"uid": "e01199ab-08cc-44c2-8e19-5c29ded82521",
"etag": "lsndfkjsndfkjnsdfkjnsd==",
"name": "my-component-yay",
"namespace": "the-namespace",
"labels": { "backstage.io/custom": "ValueStuff" },
"annotations": { "example.com/bindings": "are-secret" },
"tags": ["java", "data"]
}
]
backstage.io/v1alpha1
, backstage.io/v1beta1
Resource
The type of resource.
["database", "s3-bucket", "cluster"]
An entity reference to the owner of the resource.
[
"artist-relations-team",
"user:john.johnson"
]
An array of references to other entities that the resource depends on to function.
An entity reference to the system that the resource belongs to.
The relations that this entity has with other entities.
A directed relation from one entity to another.
The type of relation.
A reference by name to another entity.
The kind field of the entity.
The metadata.namespace field of the entity.
The metadata.name field of the entity.
The entity ref of the target of this relation.
The current status of the entity, as claimed by various sources.
A specific status item on a well known format.
The status level / severity of the status item.
info
, warning
, error
A brief message describing the status, intended for human consumption.
An optional serialized error object related to the status.
A system is a collection of resources and components. The system may expose or consume one or several APIs. It is viewed as abstraction level that provides potential consumers insights into exposed features without needing a too detailed view into the details of all components. This also gives the owning team the possibility to decide about published artifacts and APIs.
Metadata fields common to all versions/kinds of entity.
The name of the entity. Must be unique within the catalog at any given point in time, for any given namespace + kind pair.
["metadata-proxy"]
A globally unique ID for the entity. This field can not be set by the user at creation time, and the server will reject an attempt to do so. The field will be populated in read operations. The field can (optionally) be specified when performing update or delete operations, but the server is free to reject requests that do so in such a way that it breaks semantics.
["e01199ab-08cc-44c2-8e19-5c29ded82521"]
An opaque string that changes for each update operation to any part of the entity, including metadata. This field can not be set by the user at creation time, and the server will reject an attempt to do so. The field will be populated in read operations. The field can (optionally) be specified when performing update or delete operations, and the server will then reject the operation if it does not match the current stored value.
["lsndfkjsndfkjnsdfkjnsd=="]
The namespace that the entity belongs to.
["default", "admin"]
A display name of the entity, to be presented in user interfaces instead of the name property, when available.
["React SSR Template"]
A short (typically relatively few words, on one line) description of the entity.
Key/value pairs of identifying information attached to the entity.
Key/value pairs of non-identifying auxiliary information attached to the entity.
A list of single-valued strings, to for example classify catalog entities in various ways.
A list of external hyperlinks related to the entity. Links can provide additional contextual information that may be located outside of Backstage itself. For example, an admin dashboard or external CMS page.
A url in a standard uri format.
["https://admin.example-org.com"]
A user friendly display name for the link.
["Admin Dashboard"]
A key representing a visual icon to be displayed in the UI.
["dashboard"]
An optional value to categorize links into specific groups.
[
"runbook",
"documentation",
"logs",
"dashboard"
]
[
{
"uid": "e01199ab-08cc-44c2-8e19-5c29ded82521",
"etag": "lsndfkjsndfkjnsdfkjnsd==",
"name": "my-component-yay",
"namespace": "the-namespace",
"labels": { "backstage.io/custom": "ValueStuff" },
"annotations": { "example.com/bindings": "are-secret" },
"tags": ["java", "data"]
}
]
backstage.io/v1alpha1
, backstage.io/v1beta1
System
The relations that this entity has with other entities.
A directed relation from one entity to another.
The type of relation.
A reference by name to another entity.
The kind field of the entity.
The metadata.namespace field of the entity.
The metadata.name field of the entity.
The entity ref of the target of this relation.
The current status of the entity, as claimed by various sources.
A specific status item on a well known format.
The status level / severity of the status item.
info
, warning
, error
A brief message describing the status, intended for human consumption.
An optional serialized error object related to the status.
Represents a Structurizr workspace, which is a wrapper for a software architecture model, views, and documentation.
The workspace ID.
The name of the workspace.
A short description of the workspace.
A version number for the workspace.
The thumbnail associated with the workspace; a Base64 encoded PNG file as a data URI (data:image/png;base64).
The last modified date, in ISO 8601 format (e.g. "2018-09-08T12:40:03Z").
A string identifying the user who last modified the workspace (e.g. an e-mail address or username).
A string identifying the agent that was last used to modify the workspace (e.g. "structurizr-java/1.2.0").
A software architecture model.
The enterprise associated with this model.
The name of the enterprise.
A person who uses a software system.
The ID of this person in the model.
The name of this person.
A short description of this person.
A comma separated list of tags associated with this person.
The URL where more information about this element can be found.
The location of this person.
External
, Internal
, Unspecified
The name of the group in which this person should be included in.
A set of arbitrary name-value properties.
The set of relationships from this person to other elements.
A relationship between two elements.
The ID of this relationship in the model.
A short description of this relationship.
A comma separated list of tags associated with this relationship.
The URL where more information about this relationship can be found.
The ID of the source element.
The ID of the destination element.
The technology associated with this relationship (e.g. HTTPS, JDBC, etc).
The interaction style (synchronous or asynchronous).
Synchronous
, Asynchronous
The ID of the container-container relationship upon which this container instance-container instance relationship is based.
A software system.
The ID of this software system in the model.
The name of this software system.
A short description of this software system.
The location of this software system.
External
, Internal
, Unspecified
A comma separated list of tags associated with this software system.
The URL where more information about this element can be found.
The set of containers within this software system.
A container (something that can execute code or host data).
The ID of this container in the model.
The name of this container.
A short description of this container.
The technology associated with this container (e.g. Apache Tomcat).
A comma separated list of tags associated with this container.
The URL where more information about this element can be found.
The set of components within this container.
A component (a grouping of related functionality behind an interface that runs inside a container).
The name of the group in which this container should be included in.
A set of arbitrary name-value properties.
The set of relationships from this container to other elements.
A relationship between two elements.
A wrapper for documentation.
The name of the group in which this software system should be included in.
A set of arbitrary name-value properties.
The set of relationships from this software system to other elements.
A relationship between two elements.
The ID of this relationship in the model.
A short description of this relationship.
A comma separated list of tags associated with this relationship.
The URL where more information about this relationship can be found.
The ID of the source element.
The ID of the destination element.
The technology associated with this relationship (e.g. HTTPS, JDBC, etc).
The interaction style (synchronous or asynchronous).
Synchronous
, Asynchronous
The ID of the container-container relationship upon which this container instance-container instance relationship is based.
A wrapper for documentation.
A documentation section.
A decision record (e.g. architecture decision record).
Represents a base64 encoded image (png/jpg/gif).
A deployment node.
The ID of this deployment node in the model.
The name of this deployment node.
A short description of this deployment node.
The technology associated with this deployment node (e.g. Apache Tomcat).
The deployment environment in which this deployment node resides (e.g. "Development", "Live", etc).
The number of instances; either a number (e.g. 1, 2, etc) or a range (e.g. 0..N, 0..*, 1..3, etc).
A comma separated list of tags associated with this deployment node.
The URL where more information about this element can be found.
The set of child/nested deployment nodes.
A deployment node.
The ID of this deployment node in the model.
The name of this deployment node.
A short description of this deployment node.
The technology associated with this deployment node (e.g. Apache Tomcat).
The deployment environment in which this deployment node resides (e.g. "Development", "Live", etc).
The number of instances; either a number (e.g. 1, 2, etc) or a range (e.g. 0..N, 0..*, 1..3, etc).
A comma separated list of tags associated with this deployment node.
The URL where more information about this element can be found.
The set of child/nested deployment nodes.
A deployment node.
An infrastructure node.
The set of software systems instances running in this deployment node..
An instance of a software system, running on a deployment node.
The set of container instances running in this deployment node..
An instance of a container, running on a deployment node.
A set of arbitrary name-value properties.
The set of relationships from this deployment node to other elements.
A relationship between two elements.
An infrastructure node.
The ID of this infrastructure node in the model.
The name of this infrastructure node.
A short description of this infrastructure node.
The technology associated with this infrastructure node (e.g. "Route 53").
The deployment environment in which this infrastructure node resides (e.g. "Development", "Live", etc).
A comma separated list of tags associated with this infrastructure node.
The URL where more information about this element can be found.
A set of arbitrary name-value properties.
The set of relationships from this infrastructure node to other elements.
A relationship between two elements.
The set of software systems instances running in this deployment node..
An instance of a software system, running on a deployment node.
The ID of this software system instance in the model.
The ID of the software system this is an instance of.
The number/index of this instance.
The deployment environment in which this software system instance resides (e.g. "Development", "Live", etc).
A comma separated list of tags associated with this software system instance.
A set of arbitrary name-value properties.
The set of relationships from this software system instance to other elements.
A relationship between two elements.
The set of HTTP-based health checks for this software system instance.
Describes a HTTP based health check.
The set of container instances running in this deployment node..
An instance of a container, running on a deployment node.
The ID of this container instance in the model.
The ID of the container this is an instance of.
The number/index of this instance.
The deployment environment in which this container instance resides (e.g. "Development", "Live", etc).
A comma separated list of tags associated with this container instance.
A set of arbitrary name-value properties.
The set of relationships from this container instance to other elements.
A relationship between two elements.
The set of HTTP-based health checks for this container instance.
Describes a HTTP based health check.
A set of arbitrary name-value properties.
The set of relationships from this deployment node to other elements.
A relationship between two elements.
The ID of this relationship in the model.
A short description of this relationship.
A comma separated list of tags associated with this relationship.
The URL where more information about this relationship can be found.
The ID of the source element.
The ID of the destination element.
The technology associated with this relationship (e.g. HTTPS, JDBC, etc).
The interaction style (synchronous or asynchronous).
Synchronous
, Asynchronous
The ID of the container-container relationship upon which this container instance-container instance relationship is based.
The set of views onto a software architecture model.
The set of system landscape views.
A system landscape view.
The title of this view (optional).
The description of this view.
A unique identifier for this view.
The paper size that should be used to render this view.
A6_Portrait
, A6_Landscape
, A5_Portrait
, A5_Landscape
, A4_Portrait
, A4_Landscape
, A3_Portrait
, A3_Landscape
, A2_Portrait
, A2_Landscape
, A1_Portrait
, A1_Landscape
, A0_Portrait
, A0_Landscape
, Letter_Portrait
, Letter_Landscape
, Legal_Portrait
, Legal_Landscape
, Slide_4_3
, Slide_16_9
, Slide_16_10
Represents the auto-layout configuration for a given view.
The algorithm rank direction.
TopBottom
, BottomTop
, LeftRight
, RightLeft
The separation between ranks (pixels).
The separation between nodes in the same rank (pixels).
The separation between edges (pixels).
Whether vertices should be created during automatic layout.
Specifies whether the enterprise boundary (to differentiate internal elements from external elements) should be visible on the resulting diagram.
The set of elements in this views.
An instance of a model element (Person, Software System, Container or Component) in a View.
The ID of the element.
The horizontal position of the element when rendered.
The vertical position of the element when rendered.
The set of relationships in this views.
An instance of a model relationship in a View.
The ID of the relationship.
The description of this relationship (used in dynamic views only).
Signifies whether this relationship represents a return/response message (used in dynamic views only).
Gets the order of this relationship (used in dynamic views only; e.g. 1.0, 1.1, 2.0, etc).
The set of vertices used to render the relationship.
The X, Y coordinate of a bend in a line.
The routing algorithm used when rendering this individual relationship.
Direct
, Curved
, Orthogonal
The position of the annotation along the line; 0 (start) to 100 (end).
The set of animation steps (optional).
An animation step
The order of this animation step.
The set of element IDs that should be included in this animation step.
The set of relationship IDs that should be included in this animation step.
The set of system context views.
A system context view.
The title of this view (optional).
The description of this view.
A unique identifier for this view.
The ID of the software system this view is associated with.
The paper size that should be used to render this view.
A6_Portrait
, A6_Landscape
, A5_Portrait
, A5_Landscape
, A4_Portrait
, A4_Landscape
, A3_Portrait
, A3_Landscape
, A2_Portrait
, A2_Landscape
, A1_Portrait
, A1_Landscape
, A0_Portrait
, A0_Landscape
, Letter_Portrait
, Letter_Landscape
, Legal_Portrait
, Legal_Landscape
, Slide_4_3
, Slide_16_9
, Slide_16_10
Represents the auto-layout configuration for a given view.
The algorithm rank direction.
TopBottom
, BottomTop
, LeftRight
, RightLeft
The separation between ranks (pixels).
The separation between nodes in the same rank (pixels).
The separation between edges (pixels).
Whether vertices should be created during automatic layout.
Specifies whether the enterprise boundary (to differentiate internal elements from external elements") should be visible on the resulting diagram.
The set of elements in this view.
An instance of a model element (Person, Software System, Container or Component) in a View.
The ID of the element.
The horizontal position of the element when rendered.
The vertical position of the element when rendered.
The set of relationships in this view.
An instance of a model relationship in a View.
The ID of the relationship.
The description of this relationship (used in dynamic views only).
Signifies whether this relationship represents a return/response message (used in dynamic views only).
Gets the order of this relationship (used in dynamic views only; e.g. 1.0, 1.1, 2.0, etc).
The set of vertices used to render the relationship.
The X, Y coordinate of a bend in a line.
The routing algorithm used when rendering this individual relationship.
Direct
, Curved
, Orthogonal
The position of the annotation along the line; 0 (start) to 100 (end).
The set of animation steps (optional).
An animation step
The order of this animation step.
The set of element IDs that should be included in this animation step.
The set of relationship IDs that should be included in this animation step.
The set of container views.
A container view.
The title of this view (optional).
The description of this view.
A unique identifier for this view.
The ID of the software system this view is associated with.
The paper size that should be used to render this view.
A6_Portrait
, A6_Landscape
, A5_Portrait
, A5_Landscape
, A4_Portrait
, A4_Landscape
, A3_Portrait
, A3_Landscape
, A2_Portrait
, A2_Landscape
, A1_Portrait
, A1_Landscape
, A0_Portrait
, A0_Landscape
, Letter_Portrait
, Letter_Landscape
, Legal_Portrait
, Legal_Landscape
, Slide_4_3
, Slide_16_9
, Slide_16_10
Represents the auto-layout configuration for a given view.
The algorithm rank direction.
TopBottom
, BottomTop
, LeftRight
, RightLeft
The separation between ranks (pixels).
The separation between nodes in the same rank (pixels).
The separation between edges (pixels).
Whether vertices should be created during automatic layout.
The set of elements in this views.
An instance of a model element (Person, Software System, Container or Component) in a View.
The ID of the element.
The horizontal position of the element when rendered.
The vertical position of the element when rendered.
The set of relationships in this views.
An instance of a model relationship in a View.
The ID of the relationship.
The description of this relationship (used in dynamic views only).
Signifies whether this relationship represents a return/response message (used in dynamic views only).
Gets the order of this relationship (used in dynamic views only; e.g. 1.0, 1.1, 2.0, etc).
The set of vertices used to render the relationship.
The X, Y coordinate of a bend in a line.
The routing algorithm used when rendering this individual relationship.
Direct
, Curved
, Orthogonal
The position of the annotation along the line; 0 (start) to 100 (end).
The set of animation steps (optional).
An animation step
The order of this animation step.
The set of element IDs that should be included in this animation step.
The set of relationship IDs that should be included in this animation step.
Specifies whether software system boundaries should be visible for "external" containers (those outside the software system in scope).
The set of component views.
A component view.
The title of this view (optional).
The description of this view.
A unique identifier for this view.
The ID of the container this view is associated with.
The paper size that should be used to render this view.
A6_Portrait
, A6_Landscape
, A5_Portrait
, A5_Landscape
, A4_Portrait
, A4_Landscape
, A3_Portrait
, A3_Landscape
, A2_Portrait
, A2_Landscape
, A1_Portrait
, A1_Landscape
, A0_Portrait
, A0_Landscape
, Letter_Portrait
, Letter_Landscape
, Legal_Portrait
, Legal_Landscape
, Slide_4_3
, Slide_16_9
, Slide_16_10
Represents the auto-layout configuration for a given view.
The algorithm rank direction.
TopBottom
, BottomTop
, LeftRight
, RightLeft
The separation between ranks (pixels).
The separation between nodes in the same rank (pixels).
The separation between edges (pixels).
Whether vertices should be created during automatic layout.
The set of elements in this views.
An instance of a model element (Person, Software System, Container or Component) in a View.
The ID of the element.
The horizontal position of the element when rendered.
The vertical position of the element when rendered.
The set of relationships in this views.
An instance of a model relationship in a View.
The ID of the relationship.
The description of this relationship (used in dynamic views only).
Signifies whether this relationship represents a return/response message (used in dynamic views only).
Gets the order of this relationship (used in dynamic views only; e.g. 1.0, 1.1, 2.0, etc).
The set of vertices used to render the relationship.
The X, Y coordinate of a bend in a line.
The routing algorithm used when rendering this individual relationship.
Direct
, Curved
, Orthogonal
The position of the annotation along the line; 0 (start) to 100 (end).
The set of animation steps (optional).
An animation step
The order of this animation step.
The set of element IDs that should be included in this animation step.
The set of relationship IDs that should be included in this animation step.
Specifies whether container boundaries should be visible for "external" components (those outside the container in scope).
The set of dynamic views.
A dynamic view.
The title of this view (optional).
The description of this view.
An identifier for this view.
The ID of the element this view is associated with (optional).
The paper size that should be used to render this view.
A6_Portrait
, A6_Landscape
, A5_Portrait
, A5_Landscape
, A4_Portrait
, A4_Landscape
, A3_Portrait
, A3_Landscape
, A2_Portrait
, A2_Landscape
, A1_Portrait
, A1_Landscape
, A0_Portrait
, A0_Landscape
, Letter_Portrait
, Letter_Landscape
, Legal_Portrait
, Legal_Landscape
, Slide_4_3
, Slide_16_9
, Slide_16_10
Represents the auto-layout configuration for a given view.
The algorithm rank direction.
TopBottom
, BottomTop
, LeftRight
, RightLeft
The separation between ranks (pixels).
The separation between nodes in the same rank (pixels).
The separation between edges (pixels).
Whether vertices should be created during automatic layout.
The set of elements in this views.
An instance of a model element (Person, Software System, Container or Component) in a View.
The ID of the element.
The horizontal position of the element when rendered.
The vertical position of the element when rendered.
The set of relationships in this views.
An instance of a model relationship in a View.
The ID of the relationship.
The description of this relationship (used in dynamic views only).
Signifies whether this relationship represents a return/response message (used in dynamic views only).
Gets the order of this relationship (used in dynamic views only; e.g. 1.0, 1.1, 2.0, etc).
The set of vertices used to render the relationship.
The X, Y coordinate of a bend in a line.
The routing algorithm used when rendering this individual relationship.
Direct
, Curved
, Orthogonal
The position of the annotation along the line; 0 (start) to 100 (end).
Specifies software system/container boundaries should be visible for "external" containers/components (those outside the element in scope)
The set of deployment views.
A deployment view.
The title of this view (optional).
The description of this view.
A unique identifier for this view.
The ID of the software system this view is associated with (optional).
The name of the environment that this deployment view is for (e.g. "Development", "Live", etc).
The paper size that should be used to render this view.
A6_Portrait
, A6_Landscape
, A5_Portrait
, A5_Landscape
, A4_Portrait
, A4_Landscape
, A3_Portrait
, A3_Landscape
, A2_Portrait
, A2_Landscape
, A1_Portrait
, A1_Landscape
, A0_Portrait
, A0_Landscape
, Letter_Portrait
, Letter_Landscape
, Legal_Portrait
, Legal_Landscape
, Slide_4_3
, Slide_16_9
, Slide_16_10
Represents the auto-layout configuration for a given view.
The algorithm rank direction.
TopBottom
, BottomTop
, LeftRight
, RightLeft
The separation between ranks (pixels).
The separation between nodes in the same rank (pixels).
The separation between edges (pixels).
Whether vertices should be created during automatic layout.
The set of elements in this views.
An instance of a model element (Person, Software System, Container or Component) in a View.
The ID of the element.
The horizontal position of the element when rendered.
The vertical position of the element when rendered.
The set of relationships in this views.
An instance of a model relationship in a View.
The ID of the relationship.
The description of this relationship (used in dynamic views only).
Signifies whether this relationship represents a return/response message (used in dynamic views only).
Gets the order of this relationship (used in dynamic views only; e.g. 1.0, 1.1, 2.0, etc).
The set of vertices used to render the relationship.
The X, Y coordinate of a bend in a line.
The routing algorithm used when rendering this individual relationship.
Direct
, Curved
, Orthogonal
The position of the annotation along the line; 0 (start) to 100 (end).
The set of animation steps (optional).
An animation step
The order of this animation step.
The set of element IDs that should be included in this animation step.
The set of relationship IDs that should be included in this animation step.
The set of filtered views.
Represents a view on top of a view, which can be used to include or exclude specific elements.
The title of this view (optional).
The description of this view.
A unique identifier for this view.
The key of the view on which this filtered view is based.
Whether elements/relationships are being included or excluded based upon the set of tags.
Include
, Exclude
The set of tags to include/exclude elements/relationships when rendering this filtered view.
The configuration associated with a set of views.
The styles associated with this set of views.
The key of the view that was saved most recently.
The key of the view that should be shown by default.
The URL(s) of the theme(s) to be used when rendering diagrams.
A wrapper for the font and logo for diagram/documentation branding purposes.
Provides a way for the terminology on diagrams, etc to be modified (e.g. language translations).
The terminology used when rendering the enterprise boundary.
The terminology used when rendering people.
The terminology used when rendering software systems.
The terminology used when rendering containers.
The terminology used when rendering components.
The terminology used when rendering code elements.
The terminology used when rendering deployment nodes.
The terminology used when rendering relationships.
The type of symbols to use when rendering metadata.
SquareBrackets
, RoundBrackets
, CurlyBrackets
, AngleBrackets
, DoubleAngleBrackets
, None
A wrapper for documentation.
A documentation section.
The Markdown or AsciiDoc content of the section.
The content format type.
Markdown
, AsciiDoc
The order (index) of the section in the document.
A decision record (e.g. architecture decision record).
The ID of the decision.
The date that the decision was made (ISO 8601 format).
The status of the decision.
Proposed
, Accepted
, Superseded
, Deprecated
, Rejected
The title of the decision.
The Markdown or AsciiDoc content of the section.
The content format type.
Markdown
, AsciiDoc
The ID of the element (in the model) that this decision applies to (optional).
Represents a base64 encoded image (png/jpg/gif).
The workspace configuration.
A set of arbitrary name-value properties.
Response
user
, api-key
, notification-key
, service
user
, api-key
, notification-key
, service
1
10
user
, api-key
, notification-key
, service
user
, api-key
, notification-key
, service
curl --request POST \
--url https://api.icepanel.io/v1/organizations/{organizationId}/landscapes \
--header 'Authorization: <authorization>' \
--header 'Content-Type: application/json' \
--data '{
"name": "<string>",
"scheduledVersions": true,
"backstageEntities": {
"apis": [
[
{
"apiVersion": "backstage.io/v1alpha1",
"kind": "API",
"metadata": {
"name": "artist-api",
"description": "Retrieve artist details",
"labels": {
"product_name": "Random value Generator"
},
"annotations": {
"docs": "https://github.com/..../tree/develop/doc"
}
},
"spec": {
"type": "openapi",
"lifecycle": "production",
"owner": "artist-relations-team",
"system": "artist-engagement-portal",
"definition": "openapi: \"3.0.0\"\ninfo:..."
}
}
]
],
"components": [
[
{
"apiVersion": "backstage.io/v1alpha1",
"kind": "Component",
"metadata": {
"name": "LoremService",
"description": "Creates Lorems like a pro.",
"labels": {
"product_name": "Random value Generator"
},
"annotations": {
"docs": "https://github.com/..../tree/develop/doc"
}
},
"spec": {
"type": "service",
"lifecycle": "production",
"owner": "tools"
}
}
]
],
"domains": [
[
{
"apiVersion": "backstage.io/v1alpha1",
"kind": "Domain",
"metadata": {
"name": "artists",
"description": "Everything about artists"
},
"spec": {
"owner": "artist-relations-team"
}
}
]
],
"resources": [
[
{
"apiVersion": "backstage.io/v1alpha1",
"kind": "Resource",
"metadata": {
"name": "artists-db",
"description": "Stores artist details"
},
"spec": {
"type": "database",
"owner": "artist-relations-team",
"system": "artist-engagement-portal"
}
}
]
],
"systems": [
[
{
"apiVersion": "backstage.io/v1alpha1",
"kind": "System",
"metadata": {
"name": "artist-engagement-portal",
"description": "Handy tools to keep artists in the loop"
},
"spec": {
"owner": "artist-relations-team",
"domain": "artists"
}
}
]
]
},
"structurizrWorkspace": {
"id": 123,
"name": "<string>",
"description": "<string>",
"version": "<string>",
"thumbnail": "<string>",
"lastModifiedDate": "<string>",
"lastModifiedUser": "<string>",
"lastModifiedAgent": "<string>",
"model": {
"enterprise": {
"name": "<string>"
},
"people": [
{
"id": "<string>",
"name": "<string>",
"description": "<string>",
"tags": "<string>",
"url": "<string>",
"location": "External",
"group": "<string>",
"properties": {},
"relationships": [
{
"id": "<string>",
"description": "<string>",
"tags": "<string>",
"url": "<string>",
"sourceId": "<string>",
"destinationId": "<string>",
"technology": "<string>",
"interactionStyle": "Synchronous",
"linkedRelationshipId": "<string>"
}
]
}
],
"softwareSystems": [
{
"id": "<string>",
"name": "<string>",
"description": "<string>",
"location": "External",
"tags": "<string>",
"url": "<string>",
"containers": [
{
"id": "<string>",
"name": "<string>",
"description": "<string>",
"technology": "<string>",
"tags": "<string>",
"url": "<string>",
"components": [
{
"id": "<string>",
"name": "<string>",
"description": "<string>",
"technology": "<string>",
"tags": "<string>",
"url": "<string>",
"group": "<string>",
"properties": {},
"relationships": [
{
"id": "<string>",
"description": "<string>",
"tags": "<string>",
"url": "<string>",
"sourceId": "<string>",
"destinationId": "<string>",
"technology": "<string>",
"interactionStyle": "Synchronous",
"linkedRelationshipId": "<string>"
}
],
"documentation": {
"sections": [
{
"content": "<string>",
"format": "Markdown",
"order": 123
}
],
"decisions": [
{
"id": "<string>",
"date": "<string>",
"status": "Proposed",
"title": "<string>",
"content": "<string>",
"format": "Markdown",
"elementId": "<string>"
}
],
"images": [
{
"name": "<string>",
"content": "<string>",
"type": "<string>"
}
]
}
}
],
"group": "<string>",
"properties": {},
"relationships": [
{
"id": "<string>",
"description": "<string>",
"tags": "<string>",
"url": "<string>",
"sourceId": "<string>",
"destinationId": "<string>",
"technology": "<string>",
"interactionStyle": "Synchronous",
"linkedRelationshipId": "<string>"
}
],
"documentation": {
"sections": [
{
"content": "<string>",
"format": "Markdown",
"order": 123
}
],
"decisions": [
{
"id": "<string>",
"date": "<string>",
"status": "Proposed",
"title": "<string>",
"content": "<string>",
"format": "Markdown",
"elementId": "<string>"
}
],
"images": [
{
"name": "<string>",
"content": "<string>",
"type": "<string>"
}
]
}
}
],
"group": "<string>",
"properties": {},
"relationships": [
{
"id": "<string>",
"description": "<string>",
"tags": "<string>",
"url": "<string>",
"sourceId": "<string>",
"destinationId": "<string>",
"technology": "<string>",
"interactionStyle": "Synchronous",
"linkedRelationshipId": "<string>"
}
],
"documentation": {
"sections": [
{
"content": "<string>",
"format": "Markdown",
"order": 123
}
],
"decisions": [
{
"id": "<string>",
"date": "<string>",
"status": "Proposed",
"title": "<string>",
"content": "<string>",
"format": "Markdown",
"elementId": "<string>"
}
],
"images": [
{
"name": "<string>",
"content": "<string>",
"type": "<string>"
}
]
}
}
],
"deploymentNodes": [
{
"id": "<string>",
"name": "<string>",
"description": "<string>",
"technology": "<string>",
"environment": "<string>",
"instances": "<string>",
"tags": "<string>",
"url": "<string>",
"children": [
{}
],
"infrastructureNodes": [
{
"id": "<string>",
"name": "<string>",
"description": "<string>",
"technology": "<string>",
"environment": "<string>",
"tags": "<string>",
"url": "<string>",
"properties": {},
"relationships": [
{
"id": "<string>",
"description": "<string>",
"tags": "<string>",
"url": "<string>",
"sourceId": "<string>",
"destinationId": "<string>",
"technology": "<string>",
"interactionStyle": "Synchronous",
"linkedRelationshipId": "<string>"
}
]
}
],
"softwareSystemInstances": [
{
"id": "<string>",
"softwareSystemId": "<string>",
"instanceId": 123,
"environment": "<string>",
"tags": "<string>",
"properties": {},
"relationships": [
{
"id": "<string>",
"description": "<string>",
"tags": "<string>",
"url": "<string>",
"sourceId": "<string>",
"destinationId": "<string>",
"technology": "<string>",
"interactionStyle": "Synchronous",
"linkedRelationshipId": "<string>"
}
],
"healthChecks": [
{
"name": "<string>",
"url": "<string>",
"interval": 123,
"timeout": 123,
"headers": {}
}
]
}
],
"containerInstances": [
{
"id": "<string>",
"containerId": "<string>",
"instanceId": 123,
"environment": "<string>",
"tags": "<string>",
"properties": {},
"relationships": [
{
"id": "<string>",
"description": "<string>",
"tags": "<string>",
"url": "<string>",
"sourceId": "<string>",
"destinationId": "<string>",
"technology": "<string>",
"interactionStyle": "Synchronous",
"linkedRelationshipId": "<string>"
}
],
"healthChecks": [
{
"name": "<string>",
"url": "<string>",
"interval": 123,
"timeout": 123,
"headers": {}
}
]
}
],
"properties": {},
"relationships": [
{
"id": "<string>",
"description": "<string>",
"tags": "<string>",
"url": "<string>",
"sourceId": "<string>",
"destinationId": "<string>",
"technology": "<string>",
"interactionStyle": "Synchronous",
"linkedRelationshipId": "<string>"
}
]
}
]
},
"views": {
"systemLandscapeViews": [
{
"title": "<string>",
"description": "<string>",
"key": "<string>",
"paperSize": "A6_Portrait",
"dimensions": {
"width": 123,
"height": 123
},
"automaticLayout": {
"rankDirection": "TopBottom",
"rankSeparation": 123,
"nodeSeparation": 123,
"edgeSeparation": 123,
"vertices": true
},
"enterpriseBoundaryVisible": true,
"elements": [
{
"id": "<string>",
"x": 123,
"y": 123
}
],
"relationships": [
{
"id": "<string>",
"description": "<string>",
"response": true,
"order": "<string>",
"vertices": [
{
"x": 123,
"y": 123
}
],
"routing": "Direct",
"position": 123
}
],
"animations": [
{
"order": 123,
"elements": [
"<string>"
],
"relationships": [
"<string>"
]
}
]
}
],
"systemContextViews": [
{
"title": "<string>",
"description": "<string>",
"key": "<string>",
"softwareSystemId": "<string>",
"paperSize": "A6_Portrait",
"dimensions": {
"width": 123,
"height": 123
},
"automaticLayout": {
"rankDirection": "TopBottom",
"rankSeparation": 123,
"nodeSeparation": 123,
"edgeSeparation": 123,
"vertices": true
},
"enterpriseBoundaryVisible": true,
"elements": [
{
"id": "<string>",
"x": 123,
"y": 123
}
],
"relationships": [
{
"id": "<string>",
"description": "<string>",
"response": true,
"order": "<string>",
"vertices": [
{
"x": 123,
"y": 123
}
],
"routing": "Direct",
"position": 123
}
],
"animations": [
{
"order": 123,
"elements": [
"<string>"
],
"relationships": [
"<string>"
]
}
]
}
],
"containerViews": [
{
"title": "<string>",
"description": "<string>",
"key": "<string>",
"softwareSystemId": "<string>",
"paperSize": "A6_Portrait",
"dimensions": {
"width": 123,
"height": 123
},
"automaticLayout": {
"rankDirection": "TopBottom",
"rankSeparation": 123,
"nodeSeparation": 123,
"edgeSeparation": 123,
"vertices": true
},
"elements": [
{
"id": "<string>",
"x": 123,
"y": 123
}
],
"relationships": [
{
"id": "<string>",
"description": "<string>",
"response": true,
"order": "<string>",
"vertices": [
{
"x": 123,
"y": 123
}
],
"routing": "Direct",
"position": 123
}
],
"animations": [
{
"order": 123,
"elements": [
"<string>"
],
"relationships": [
"<string>"
]
}
],
"externalSoftwareSystemBoundariesVisible": true
}
],
"componentViews": [
{
"title": "<string>",
"description": "<string>",
"key": "<string>",
"containerId": "<string>",
"paperSize": "A6_Portrait",
"dimensions": {
"width": 123,
"height": 123
},
"automaticLayout": {
"rankDirection": "TopBottom",
"rankSeparation": 123,
"nodeSeparation": 123,
"edgeSeparation": 123,
"vertices": true
},
"elements": [
{
"id": "<string>",
"x": 123,
"y": 123
}
],
"relationships": [
{
"id": "<string>",
"description": "<string>",
"response": true,
"order": "<string>",
"vertices": [
{
"x": 123,
"y": 123
}
],
"routing": "Direct",
"position": 123
}
],
"animations": [
{
"order": 123,
"elements": [
"<string>"
],
"relationships": [
"<string>"
]
}
],
"externalContainerBoundariesVisible": true
}
],
"dynamicViews": [
{
"title": "<string>",
"description": "<string>",
"key": "<string>",
"elementId": "<string>",
"paperSize": "A6_Portrait",
"dimensions": {
"width": 123,
"height": 123
},
"automaticLayout": {
"rankDirection": "TopBottom",
"rankSeparation": 123,
"nodeSeparation": 123,
"edgeSeparation": 123,
"vertices": true
},
"elements": [
{
"id": "<string>",
"x": 123,
"y": 123
}
],
"relationships": [
{
"id": "<string>",
"description": "<string>",
"response": true,
"order": "<string>",
"vertices": [
{
"x": 123,
"y": 123
}
],
"routing": "Direct",
"position": 123
}
],
"externalBoundariesVisible": true
}
],
"deploymentView": [
{
"title": "<string>",
"description": "<string>",
"key": "<string>",
"softwareSystemId": "<string>",
"environment": "<string>",
"paperSize": "A6_Portrait",
"dimensions": {
"width": 123,
"height": 123
},
"automaticLayout": {
"rankDirection": "TopBottom",
"rankSeparation": 123,
"nodeSeparation": 123,
"edgeSeparation": 123,
"vertices": true
},
"elements": [
{
"id": "<string>",
"x": 123,
"y": 123
}
],
"relationships": [
{
"id": "<string>",
"description": "<string>",
"response": true,
"order": "<string>",
"vertices": [
{
"x": 123,
"y": 123
}
],
"routing": "Direct",
"position": 123
}
],
"animations": [
{
"order": 123,
"elements": [
"<string>"
],
"relationships": [
"<string>"
]
}
]
}
],
"filteredViews": [
{
"title": "<string>",
"description": "<string>",
"key": "<string>",
"baseViewKey": "<string>",
"mode": "Include",
"tags": [
"<string>"
]
}
],
"configuration": {
"styles": {
"elements": [
{
"tag": "<string>",
"width": 123,
"height": 123,
"background": "<string>",
"stroke": "<string>",
"strokeWidth": 123,
"color": "<string>",
"fontSize": 123,
"shape": "Box",
"icon": "<string>",
"border": "Solid",
"opacity": 123,
"metadata": true,
"description": true
}
],
"relationships": [
{
"tag": "<string>",
"thickness": 123,
"color": "<string>",
"fontSize": 123,
"width": 123,
"dashed": true,
"routing": "Direct",
"position": 123,
"opacity": 123
}
]
},
"lastSavedView": "<string>",
"defaultView": "<string>",
"themes": [
"<string>"
],
"branding": {
"logo": "<string>",
"font": {
"name": "<string>",
"url": "<string>"
}
},
"terminology": {
"enterprise": "<string>",
"person": "<string>",
"softwareSystem": "<string>",
"container": "<string>",
"component": "<string>",
"code": "<string>",
"deploymentNode": "<string>",
"relationship": "<string>"
},
"metadataSymbols": "SquareBrackets"
}
},
"documentation": {
"sections": [
{
"content": "<string>",
"format": "Markdown",
"order": 123
}
],
"decisions": [
{
"id": "<string>",
"date": "<string>",
"status": "Proposed",
"title": "<string>",
"content": "<string>",
"format": "Markdown",
"elementId": "<string>"
}
],
"images": [
{
"name": "<string>",
"content": "<string>",
"type": "<string>"
}
]
},
"configuration": {
"users": [
{
"username": "<string>",
"role": "ReadWrite"
}
]
},
"properties": {}
},
"templateId": "<string>"
}'
{
"landscape": {
"name": "<string>",
"scheduledVersions": true,
"organizationId": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"createdBy": "user",
"createdById": "<string>",
"id": "<string>",
"updatedAt": "2023-11-07T05:31:56Z",
"updatedBy": "user",
"updatedById": "<string>"
},
"version": {
"modelHandleId": "<string>",
"name": "<string>",
"notes": "<string>",
"completedAt": "2023-11-07T05:31:56Z",
"createdAt": "2023-11-07T05:31:56Z",
"createdBy": "user",
"createdById": "<string>",
"diagramHandleIds": [
"<string>"
],
"id": "<string>",
"landscapeId": "<string>",
"tags": [
"<string>"
],
"updatedAt": "2023-11-07T05:31:56Z",
"updatedBy": "user",
"updatedById": "<string>"
}
}