REQUEST PASSWORD RESET

RESET YOUR PASSWORD

OK
forgot password?
CANCEL
SHOW API DOCS NAV

REST API

API Endpoints

Enterprise

Arcentry Development

Infrastructure Description Format Reference

Common Properties

Every entry has to have these properties

Property Default Description
id required A unique ID for this entry - used by other entries to reference this one as e.g. a connection target. The ID specified here will be applied as a component or area id within the generated diagram, allowing for further interaction with the generated component through the API.
type required The type for this entry. Can be "component", "group", "connection", "image" or "frame".

Component

Specifies a single component / Arcentry object

Property Default Description
componentType required A component id, e.g. "database.postgres", "security.aws-amazon-cognito" or "generic.server".
groups [] A list of group ids this component is a child of.
connections [] A list of component or group ids this component is connected to.
frames [] A list of frame ids this component is a part of.
label null A label to be displayed underneath this component.
opacity 1 A value that determines the opacity of a component from 0 (fully transparent) to 1(fully opaque)
rotation 0 The rotation of the component in radians (multiples of PI). E.g. 0, 1.5707963, 3.1415926, 4.712388
positionType auto How the component should be positioned. If omitted or set to "auto" Arcentry will position the component for you. If set to "relative" the component position can be specified relative to another component or group, if set to "absolute" the absolute position can be specified. Any positionType other than "auto" requires positionX and positionY to be set. If set to "relative", "positionRelativeTo" is required.
positionRelativeTo required The ID of a component this component should be positioned relative to. Required if "positionType" is set to "relative".
positionX required The absolute X coordinate of this component if "positionType": "absolute" or the relative X offset to the target component if "positionType": "relative".
positionY required The absolute Y coordinate of this component if "positionType": "absolute" or the relative Y offset to the target component if "positionType": "relative".
positionPointX required This property defines the horizontal point on a group's border a component is positioned relative to. It is only required if "positionType" is "relative" and "positionRelativeTo" points to a group. Possible values are "left", "middle" or "right".
positionPointY required This property defines the vertical point on a group's border a component is positioned relative to. It is only required if "positionType" is "relative" and "positionRelativeTo" points to a group. Possible values are "top", "middle" or "bottom".
meta-* N/A A meta-data entry, e.g. meta-instance-id or meta-machine-size. Any entry starting with meta- will be added to the component's meta-data. For JSON based config it is also possible to specify meta-data as map, e.g. "meta": {"some-key": "some-value"}
showMetaData false If true, meta-data will be plotted onto the diagram, subject to the property settings below. Alternatively, showOnCanvas can be used to specify a subset of meta-data to be displayed on the diagram.
showOnCanvas all A comma-separated list of meta-data keys to be displayed on the diagram underneath the component. If your component has e.g. meta-cpu, meta-ram and meta-storage-size, but you only wish to display cpu and ram, specify "showOnCanvas": "cpu, ram"
showInTooltip all A comma-separated list of meta-data keys to be displayed in the context-menu/tooltip on embedded diagrams or in presentation-mode. If your component has e.g. meta-cpu, meta-ram and meta-storage-size, but you only wish to display cpu and ram, specify "showInTooltip": "cpu, ram"
showMetaDataKeys true If true, the keys (e.g. cpu, ram, machine size etc) are displayed as small, grey labels above the meta-data values.
metaDataFontSize 0.25 The font-size for the meta-data values displayed on the diagram. Keys will be displayed at half that font-size.
metaDataTextAlign "center" Text align for meta-data displayed on the diagram. Can be "left", "center" or "right".

Generic / Customizable Components

In addition to the general component properties documented above, generic components can be styled using additional properties. Components supporting these properties can be recognized by ids starting with generic., e.g. generic.database or generic.server.

Property Default Description
backgroundColor #FFFFFF Background color for the component in hex-notation, e.g. "#FF0000".
primaryColor #CCCCCC Accent color for the component in hex-notation, e.g. "#FF0000".
secondaryColor #CCCCCC A small number of components supports accents in a secondary color in hex-notation, e.g. "#FF0000".
icon null The name of an icon to be displayed on the component, e.g. "chart-bar", or "cloud". Please note: when using an image, set icon to null and specify an "imagePath" instead.
iconColor #333333 The color for the icon, only applicable if "icon": true.
imagePath null Path to an image that was previously uploaded to Arcentry. If imagePath is specified, make sure that icon is set to null. "icon": true.
imageSize 1 Determines the size of the icon or image relative to the size of the component. Goes from 1 (full sized) to 0.001 (pretty much invisibly tiny).

Groups

Groups can be styled in terms of appearance, style and label.

Property Default Description
label null A label to be displayed for the group.
labelStyle "block" Labels can either be displayed as "block" - large labels with a colorful background that extrude at the bottom of the group or "inline" - smaller, more flexible text that's displayed on or near the group's border.
lineColor automatic The color for lines and block label backgrounds. If no color is specified, Arcentry will select a constant color by hashing the root group's ID.
lineWidth 0.05 The width of the line surrounding the group.
lineDash solid The style of the line, can be "solid", "dashed" or "dotted".
fillColor #FFFFFF The fill color for the main area of the group.
areaType 0 Determines whether to display a wall around the group to indicate a security zone. Use 0 for no wall or 1 for a wall.
wallHeight 2 If areaType is set to 1, this value determines the height of the wall.
wallColor #CCCCCC If areaType is set to 1, this value determines the color of the wall.
labelFontColor #FFFFFF (block) / #333333 (inline) The font color for the label.
labelFontSize 0.5 (block) / 0.2 (inline) The font size for the label.
labelAlign right Only applicable if labelStyle is inline. Possible values are "left", "center" or "right".
labelPosition bottom Only applicable if labelStyle is inline. Possible values are "top" or "bottom".
labelPlacementOnLine on Only applicable if labelStyle is inline. Determines where the label is placed in relation to the line. Possible values are "above", "on" or "below".
labelBold true Toggle bold on or off.
labelItalic false Toggle italic on or off.
labelFont Arcentry Font The font family for the label. The specified font needs to be installed on the target system.
labelOutlineColor #FFFFFF Color for the outline surrounding the label text.
labelOutlineWidth 0.075 The width of the outline surrounding the label text.

Connections

Arcentry allows to specify additional settings for connections. Similar to groups, the connections themselves are specified using the connections property of components and groups.

Property Default Description
from required The ID of the component or group the connection originates from.
to required The ID of the component or group the connection points to.
arrowStart false Whether an arrow should point at the start element.
arrowEnd false Whether an arrow should point at the target element.
lineWidth 0.5 The width of the line indicating the connection.
lineColor #E61898 The color of the line indicating the connection.
lineDash solid The style of the line, can be "solid", "dashed" or "dotted".
component null The ID of an optional component to be displayed at the center of the longest segment of the connection - e.g. "database.postgres", "security.aws-amazon-cognito" or "generic.server".
label null If component is specified, this adds a label to the component.

Images

Images can be placed at any size absolutely or relatively to another component or group

Property Default Description
path required The path to the image that should be displayed. Can be absolute (e.g. starting with http or https) or relative to the user image directory.
stretchToSize false If true, the image will be stretched to fit the exact dimensions specified by width and height. If false, the image will be centered within its dimensions and scaled to its larger side.
width 3 The width of the image
height 2 The height of the image
rotation 0 The rotation of the image in radians (multiples of PI). E.g. 0, 1.5707963, 3.1415926, 4.712388
positionType absolute Determines how the image should be positioned. If omitted or set to "absolute" Arcentry will position the top left corner of the image at the exact coordinates specified by positionX and positionY. If set to "relative" the image's position can be specified relative to another component or group. If set to "relative", "positionRelativeTo" is required.
positionRelativeTo required The ID of a component this component should be positioned relative to. Required if "positionType" is set to "relative".
positionX required The absolute X coordinate of this component if "positionType": "absolute" or the relative X offset to the target component if "positionType": "relative".
positionY required The absolute Y coordinate of this component if "positionType": "absolute" or the relative Y offset to the target component if "positionType": "relative".
positionPointX required This property defines the horizontal point on a group's border a component is positioned relative to. It is only required if "positionType" is "relative" and "positionRelativeTo" points to a group. Possible values are "left", "middle" or "right".
positionPointY required This property defines the vertical point on a group's border a component is positioned relative to. It is only required if "positionType" is "relative" and "positionRelativeTo" points to a group. Possible values are "top", "middle" or "bottom".

Frame

Frames are boxes or irregular shapes around one or multiple components, similar to groups. In difference to groups though, frames life outside the group / element hierarchie and can span multiple groups or tiers. Similar to groups, frames are defined in a "frames":[ "frameA", "frameB"] entry for each component that's part of the frame and configured using a "type":"frame" entry.

Property Default Description
shape "rectangle" The shape of the frame, can be "rectangle" or "irregular" which creates a fitted shape that follows the outline of the components within the frame.
paddingTop, paddingBottom, paddingRight, paddingLeft 0 Adds padding to the frame.
label null A label to be displayed for the frame.
lineColor automatic The border color for the frame. If no color is specified, Arcentry will select a constant color by hashing the frame's ID.
lineWidth 0.05 The width of the line surrounding the frame.
lineDash solid The style of the line, can be "solid", "dashed" or "dotted".
fillColor #FFFFFF The fill color for the main area of the frame.
areaType 0 Determines whether to display a wall around the frame to indicate a security zone. Use 0 for no wall or 1 for a wall.
wallHeight 2 If areaType is set to 1, this value determines the height of the wall.
wallColor #CCCCCC If areaType is set to 1, this value determines the color of the wall.
labelFontColor #FFFFFF (block) / #333333 (inline) The font color for the label.
labelFontSize 0.5 (block) / 0.2 (inline) The font size for the label.
labelAlign right Only applicable if labelStyle is inline. Possible values are "left", "center" or "right".
labelPosition bottom Only applicable if labelStyle is inline. Possible values are "top" or "bottom".
labelPlacementOnLine on Only applicable if labelStyle is inline. Determines where the label is placed in relation to the line. Possible values are "above", "on" or "below".
labelBold true Toggle bold on or off.
labelItalic false Toggle italic on or off.
labelFont Arcentry Font The font family for the label. The specified font needs to be installed on the target system.
labelOutlineColor #FFFFFF Color for the outline surrounding the label text.
labelOutlineWidth 0.075 The width of the outline surrounding the label text.