Guide to the contents of the Brikit blueprints JSON file

Data ElementStructureWhat It DoesWhat It MeansExample

spaceBlueprints

ArrayLists every Brikit space blueprint on your site.

Each item in this array is an object that defines one space blueprint.

This array will be empty if there are no space blueprints for your site.

 "spaceBlueprints" : [ 
     {
         "name"              : "New Product",
         "description"       : "Create a space for a new product.",
         "blueprintSpaceKey" : "productspacebp",
         "blueprintFields"   : [ "product-name", "product-owner-username" ],
         "spaceName"         : "[[product-name]]",
         "spaceKey"          : "[[product-name]]",
         "spaceCategories"   : "development, product",
         "spaceDescription"  : "Product space for everything related to [[product-name]]",
         "access"            : ["Product Space"]
     },
     {
         "name"              : "Team Workspace",
         "description"       : "Workspace for a department or project team",
         "blueprintSpaceKey" : "teamspacebp",
         "blueprintFields"   : [ "team-name", "team-key", "team-edit-group" ],
         "spaceName"         : "[[team-name]] Workspace",
         "spaceKey"          : "[[team-key]]",
         "spaceDescription"  : "Projects, timelines, and resources for the [[team-name]] team",
         "access"            : [ "Team" ]
     }
 ]
 

 "spaceBlueprints" : [
 ]
 

spaceBlueprints[n]

ObjectDefines an individual space blueprint on your site.

This object comprises a set of key/value pairs that function as specifications or instructions for creating new spaces from this blueprint.

Keys in this object:

 "spaceBlueprints" : [
     ...     
     {
         "name"              : "New Product",
         "description"       : "Create a space for a new product.",
         "blueprintSpaceKey" : "productspacebp",
         "blueprintFields"   : [ "product-name", "product-owner-username" ],
         "spaceName"         : "[[product-name]]",
         "spaceKey"          : "[[product-name]]",
         "spaceCategories"   : "development, product",
         "spaceDescription"  : "Product space for everything related to [[product-name]]",
         "access"            : [ "Product Space" ]
     }

     ...
 ]

spaceBlueprints[n].name

Key/value pairDefines the name of a space blueprint.The string value assigned to this key will be the name of the blueprint as it appears in the Blueprints Menu and Blueprint Definitions Page.

 "spaceBlueprints" : [
     ...     
     {
"name"              : "New Product",
         "description"       : "Create a space for a new product.",
         "blueprintSpaceKey" : "productspacebp",
         "blueprintFields"   : [ "product-name", "product-owner-username" ],
         "spaceName"         : "[[product-name]]",
         "spaceKey"          : "[[product-name]]",
         "spaceCategories"   : "development, product",
         "spaceDescription"  : "Product space for everything related to [[product-name]]",
         "access"            : [ "Product Space" ]
     }
     ...
 ]

spaceBlueprints[n].description

Key/value pairDescribes a space blueprint.The string value assigned to this key will be the description of the blueprint as it appears directly below the blueprint's name/title in the Blueprints Menu.

 "spaceBlueprints" : [
     ...     
     {
"name"              : "New Product",
         "description"       : "Create a space for a new product.",
         "blueprintSpaceKey" : "productspacebp",
         "blueprintFields"   : [ "product-name", "product-owner-username" ],
         "spaceName"         : "[[product-name]]",
         "spaceKey"          : "[[product-name]]",
         "spaceCategories"   : "development, product",
         "spaceDescription"  : "Product space for everything related to [[product-name]]",
         "access"            : [ "Product Space" ]
     }
     ...
 ]

spaceBlueprints[n].blueprintSpaceKey

Key/value pairIndicates a blueprint source space.The string value assigned to this key is the space key of the source space that will serve as the template for new spaces generated from this blueprint.

 "spaceBlueprints" : [
     ...     
     {
"name"              : "New Product",
         "description"       : "Create a space for a new product.",
         "blueprintSpaceKey" : "productspacebp",
         "blueprintFields"   : [ "product-name", "product-owner-username" ],
         "spaceName"         : "[[product-name]]",
         "spaceKey"          : "[[product-name]]",
         "spaceCategories"   : "development, product",
         "spaceDescription"  : "Product space for everything related to [[product-name]]",
         "access"            : [ "Product Space" ]
     }
     ...
 ]
 

 

spaceBlueprints[n].blueprintFields

Key/value pairLists all custom substitution fields included in the blueprint.

The array assigned to this key will comprise the names of all custom substitution fields that will be a part of this blueprint.

These are the fields blueprint users will be asked to provide values for whenever they create new spaces from this blueprint.

Each field name listed here will map to a blueprint field object defined in the JSON file. The substitution field name as it occurs in this array will match the corresponding blueprint field object's id key, which will also match the substitution field name as it occurs in the blueprint source page (enclosed in double brackets: [[substitution-field-name]]).

 "spaceBlueprints" : [
     ...     
     {
"name"              : "New Product",
         "description"       : "Create a space for a new product.",
         "blueprintSpaceKey" : "productspacebp",
         "blueprintFields"   : [ "product-name", "product-owner-username" ],
         "spaceName"         : "[[product-name]]",
         "spaceKey"          : "[[product-name]]",
         "spaceCategories"   : "development, product",
         "spaceDescription"  : "Product space for everything related to [[product-name]]",
         "access"            : [ "Product Space" ]
     }
     ...
 ]

spaceBlueprints[n].spaceName

Key/value pairDefines how new spaces generated from a space blueprint will be named.

The string value of this key will be the name of a new space generated via blueprint.

It is possible and indeed recommended to incorporate at least one custom substitution field into this key's value so that each new space created from this blueprint will have a unique name from the start, without requiring any extra input from the user who is creating the new space. (Built-in substitution fields, however, are not supported here.)

 "spaceBlueprints" : [
     ...     
     {
         "name"              : "Team Workspace",
         "description"       : "Workspace for a department or project team",
         "blueprintSpaceKey" : "teamspacebp",
         "blueprintFields"   : [ "team-name", "team-key", "team-edit-group" ],
         "spaceName"         : "[[team-name]] Workspace",
         "spaceKey"          : "[[team-key]]",
         "spaceDescription"  : "Projects, timelines, and resources for the [[team-name]] team",
         "access"            : [ "Team" ]
     }
...
 ]
 

 

spaceBlueprints[n].spaceKey

Key/value pairDefines the space key for new spaces generated from a blueprint.

The string value will be the space key of any new spaces generated via blueprint.

As with the spaceName key, it is possible and indeed recommended to incorporate at least one substitution field into this key's value so that each new space created from this blueprint will have a unique key from the start. Otherwise, when blueprint users try to create new spaces from blueprint, they will be prompted to go back and manually enter a unique space key to avoid naming collisions.

 "spaceBlueprints" : [
     ...     
     {
         "name"              : "Team Workspace",
         "description"       : "Workspace for a department or project team",
         "blueprintSpaceKey" : "teamspacebp",
         "blueprintFields"   : [ "team-name", "team-key", "team-edit-group" ],
         "spaceName"         : "[[team-name]] Workspace",
         "spaceKey"          : "[[team-key]]",
         "spaceDescription"  : "Projects, timelines, and resources for the [[team-name]] team",
         "access"            : [ "Team" ]
     }
...
 ]
 

 

spaceBlueprints[n].spaceCategories

Key/value pairAdds labels to new spaces generated from a blueprint.

The string value of this key is a comma-separated list of labels that will automatically be added to any new spaces created from the blueprint.

Custom substitution fields are allowed. The [[CURRENT DATE]], [[SPACE KEY]], and [[SPACE NAME]] built-in substitution fields are supported; however, we do not recommend using [[SPACE NAME]] as doing so will often result in errors (as labels cannot contain spaces and space names often consist of more than one word).

Leave blank or remove this key/value pair from the object altogether if you do not want to add labels to the new spaces.

 "spaceBlueprints" : [
     ...     
     {
"name"              : "New Product",
         "description"       : "Create a space for a new product.",
         "blueprintSpaceKey" : "productspacebp",
         "blueprintFields"   : [ "product-name", "product-owner-username" ],
         "spaceName"         : "[[product-name]]",
         "spaceKey"          : "[[product-name]]",
         "spaceCategories"   : "development, product",
         "spaceDescription"  : "Product space for everything related to [[product-name]]",
         "access"            : [ "Product Space" ]
     }
     ...
 ]
 

 

spaceBlueprints[n].spaceDescription

Key/value pairDescribes new spaces generated via blueprint.

The string value of this key will be the description (as seen in the

Confluence space directory;

editable via the Space Tools Menu) for any new space generated from the blueprint.

It is possible to incorporate custom substitution fields into this key's value, should you wish to do that, although the use of built-in substitution fields is not supported.

 "spaceBlueprints" : [
     ...     
     {
"name"              : "New Product",
         "description"       : "Create a space for a new product.",
         "blueprintSpaceKey" : "productspacebp",
         "blueprintFields"   : [ "product-name", "product-owner-username" ],
         "spaceName"         : "[[product-name]]",
         "spaceKey"          : "[[product-name]]",
         "spaceCategories"   : "development, product",
         "spaceDescription"  : "Product space for everything related to [[product-name]]",
         "access"            : [ "Product Space" ]
     }
     ...
 ]

spaceBlueprints[n].access

Key/value pairAssigns a permission scheme to new spaces created from a blueprint.

The array assigned to this key will comprise the name of one or more permission settings objects enumerated in the accessLists array. Defining these objects will give blueprint authors tight control over who can view and edit the new spaces.

Leave this array empty if you wish to restrict access to new spaces to everyone except the space creator.

 "spaceBlueprints" : [
     ...     
     {
"name"              : "New Product",
         "description"       : "Create a space for a new product.",
         "blueprintSpaceKey" : "productspacebp",
         "blueprintFields"   : [ "product-name", "product-owner-username" ],
         "spaceName"         : "[[product-name]]",
         "spaceKey"          : "[[product-name]]",
         "spaceCategories"   : "development, product",
         "spaceDescription"  : "Product space for everything related to [[product-name]]",
         "access"            : [ "Product Space" ]
     }
     ...
 ]

accessLists

ArrayLists all permission schemes that may be applied to space blueprints.Each item in this array is an object that defines space permission settings.

 "accessLists" : [   
     {
         "name"        : "Product Space",
         "permissions" : [
             {
                 "type"  : "group",
                 "name"  : "developers",
                 "grant" : [ "VIEWSPACE", "EDITSPACE" ]
             },
             {
                 "type" : "group",
                 "name" : "testers",
                 "grant" : [ "VIEWSPACE", "EDITSPACE", "COMMENT", "REMOVECOMMENT" ]
             },
             {
                 "type" : "group",
                 "name" : "editors",
                 "grant" : [ "VIEWSPACE", "EDITSPACE", "REMOVEPAGE", "EDITBLOG", "COMMENT", "REMOVECOMMENT", "CREATEATTACHMENT", "REMOVEATTACHMENT" ]
             },
             {
                 "type" : "user",
                 "name" : "[[product-owner-username]]",
                 "grant" : [ "ALL" ]
             }
         ]
     },
     {
         "name: "Team",
         "permissions" : [
             {
                 "type" : "group",
                 "name" : "[[team-edit-group]]",
                 "grant" : [ "VIEWSPACE", "EDITSPACE", "REMOVEPAGE", "COMMENT", "REMOVECOMMENT", "CREATEATTACHMENT", "REMOVEATTACHMENT", "EXPORTSPACE" ]
             }
         ]
     }
 ]

accessLists[n]

Object   
pageBlueprintsArrayLists every Brikit page blueprint on your site.Each item in this array is an object that defines one page blueprint.

This array will be empty if there are no page blueprints for your site.

 "pageBlueprints" : [ 
     {
         "name"            : "Product Overview",
         "description"     : "Create a page that describes the product.",
         "spaceKey"        : "BP",
         "pageTitle"       : "[[product-name]] Overview",
         "blueprintFields" : [ "product-name", "product-logo"]
     },
     {
         "name"            : "Team Member Profile",
         "description"     : "Create a page to show a member's profile information.",
         "spaceKey"        : "BP",
         "pageTitle"       : "[[team-member-name]]",
         "blueprintFields" : [ "team-member-name", "team-member-username" ],
         "includeChildren" : true,
         "visibility"      : [ "docs", "support" ]
     }
 ]

 "pageBlueprints" : [
 ]
 

Page blueprint object / item in "pageBlueprints" array

ObjectDefines an individual page blueprint on your site.

This object comprises a set of key/value pairs that function as specifications or instructions for creating new spaces from this blueprint.

Keys in this object:

 "pageBlueprints" : [
     ...     
     {
         "name"            : "Team Member Profile",
         "description"     : "Create a page to show a member's profile information.",
         "spaceKey"        : "BP",
         "pageTitle"       : "[[team-member-name]]",
         "blueprintFields" : [ "team-member-name", "team-member-username" ],
         "includeChildren" : true,
         "visibility"      : [ "docs", "support" ]
     }

     ...
 ]

"name" : "string"

Key/value pairDefines the name of a space or page blueprint.

The string value assigned to this key will be the name of the blueprint as it appears in the Blueprints Menu and Blueprint Definitions Page.

This key/value pair occurs in both space blueprint objects and page blueprint objects.

 "spaceBlueprints" : [
     ...     
     {
"name"              : "New Product",
         "description"       : "Create a space for a new product.",
         "blueprintSpaceKey" : "productspacebp",
         "blueprintFields"   : [ "product-name", "product-owner-username" ],
         "spaceName"         : "[[product-name]]",
         "spaceKey"          : "[[product-name]]",
         "spaceCategories"   : "development, product",
         "spaceDescription"  : "Product space for everything related to [[product-name]]",
         "access"            : [ "Product Space" ]
     }
     ...
 ]

 "pageBlueprints" : [
     ...     
     {
"name"            : "Product Overview",
         "description"     : "Create a page that describes the product.",
         "spaceKey"        : "BP",
         "pageTitle"    : "[[product-name]] Overview",
         "blueprintFields" : [ "product-name", "product-logo" ]
     }
     ...
 ]

"description" : "string"

Key/value pairDescribes a space or page blueprint.

The string value assigned to this key will be the description of the blueprint as it appears directly below the blueprint's name/title in the Blueprints Menu.

This key/value pair occurs in both space blueprint objects and page blueprint objects.

 "spaceBlueprints" : [
     ...     
     {
"name"              : "New Product",
         "description"       : "Create a space for a new product.",
         "blueprintSpaceKey" : "productspacebp",
         "blueprintFields"   : [ "product-name", "product-owner-username" ],
         "spaceName"         : "[[product-name]]",
         "spaceKey"          : "[[product-name]]",
         "spaceCategories"   : "development, product",
         "spaceDescription"  : "Product space for everything related to [[product-name]]",
         "access"            : [ "Product Space" ]
     }
     ...
 ]

 "pageBlueprints" : [
     ...     
     {
"name"            : "Product Overview",
         "description"     : "Create a page that describes the product.",
         "spaceKey"        : "BP",
         "pageTitle"    : "[[product-name]] Overview",
         "blueprintFields" : [ "product-name", "product-logo" ]
     }
     ...
 ]

"blueprintFields" : [array]

Key/value pairLists all custom substitution fields included in the blueprint.

The array assigned to this key will comprise the names of all custom substitution fields that will be a part of this blueprint.

These are the fields blueprint users will be asked to provide values for whenever they create new spaces or pages from this blueprint.

Each field name listed here will map to a blueprint field object defined in the JSON file. The substitution field name as it occurs in this array will match the corresponding blueprint field object's id key, which will also match the substitution field name as it occurs in the blueprint source page (enclosed in double brackets: [[substitution-field-name]]).

This key/value pair occurs in both space blueprint objects and page blueprint objects.

 "spaceBlueprints" : [
     ...     
     {
"name"              : "New Product",
         "description"       : "Create a space for a new product.",
         "blueprintSpaceKey" : "productspacebp",
         "blueprintFields"   : [ "product-name", "product-owner-username" ],
         "spaceName"         : "[[product-name]]",
         "spaceKey"          : "[[product-name]]",
         "spaceCategories"   : "development, product",
         "spaceDescription"  : "Product space for everything related to [[product-name]]",
         "access"            : [ "Product Space" ]
     }
     ...
 ]

 "pageBlueprints" : [
     ...     
     {
"name"            : "Product Overview",
         "description"     : "Create a page that describes the product.",
         "spaceKey"        : "BP",
         "pageTitle"    : "[[product-name]] Overview",
         "blueprintFields" : [ "product-name", "product-logo" ]
     }
     ...
 ]

"spaceKey" : "string"

Key/value pair

Defines the space key for new spaces generated from a blueprint;

OR

Indicates the space that holds a page blueprint's source page.

When this key/value pair occurs in a space blueprint object , the string value will be the space key of any new spaces generated via blueprint.

As with the spaceName key, it is possible and indeed recommended to incorporate at least one substitution field into this key's value so that each new space created from this blueprint will have a unique key from the start. Otherwise, when blueprint users try to create new spaces from blueprint, they will be prompted to go back and manually enter a unique space key to avoid naming collisions.

When this key/value pair occurs in a page blueprint object , the string value will simply be the key of the space that is holding the blueprint source page.

Another way to think about it: The space indicated here is where we'll find the value of "pageTitle".

 

 

 "pageBlueprints" : [
     ...     
     {
"name"            : "Product Overview",
         "description"     : "Create a page that describes the product.",
         "spaceKey"        : "BP",
         "pageTitle"    : "[[product-name]] Overview",
         "blueprintFields" : [ "product-name", "product-logo" ]
     }
     ...
 ]

Space access object / item in "accessLists" array

Object   

"permissions"

Array   

Permissions object / item in "permissions" array

Object   

"pageTitle" : "string"

Key/value pair   
  • link
  • link
  • link
  • link