Stack

An Object

Note

Drop in one of our language drivers to accelerate your development.
Here are links to some of our popular Cookbooks to help you get started!

Parent

This Stack is contained within a Platform.

Properties

The following properties are available:

Property Type Default Read-Only Description
_doc string No The primary ID
_system object No Metadata maintained by the system
key string No

Methods

The following methods are available:

Add Team Member

Adds a principal as a member of a Team against the given stack
POST /stacks/{stackId}/teams/{teamKey}/members/add

Parameters

Name Required Type Description
stackId true string
teamKey true string
id true string

Response

{
  "type": "object",
  "description": "Result Map",
  "properties": {
    "total_rows": {
      "type": "number"
    },
    "offset": {
      "type": "number"
    },
    "size": {
      "type": "number"
    },
    "rows": {
      "type": "array",
      "items": {
        "type": "object"
      }
    }
  }
}

Assign

POST /stacks/{stackId}/datastores/assign

Parameters

Name Required Type Description
stackId true string
type true string
id true string
key false string

Response

{}

Attachments

GET /stacks/{stackId}/attachments

Parameters

Name Required Type Description
stackId true string

Response

{}

Attachments

POST /stacks/{stackId}/attachments

Parameters

Name Required Type Description
stackId true string

Response

{}

Check Membership

Checks whether a principal belongs to a Team for the given stack
POST /stacks/{stackId}/teams/{teamKey}/members/check

Parameters

Name Required Type Description
stackId true string
teamKey true string
id true string

Response

{
  "type": "object",
  "description": "Check",
  "extends": "status",
  "properties": {
    "belongs": {
      "type": "boolean"
    },
    "ok": null
  }
}

Check Permission

Checks whether one or more authorities against the specified stack are granted for a given set of users
POST /stacks/{stackId}/permissions/{permissionId}/check

Parameters

Name Required Type Description
stackId true string
permissionId true string
id true string

Response

{
  "$ref": "#/components/schemas/checkPermission"
}

Check Single Authority

Checks whether a single authority is granted against the specified stack for the given user
POST /stacks/{stackId}/authorities/{authorityId}/check

Parameters

Name Required Type Description
stackId true string
authorityId true string
id true string

Response

{
  "type": "object",
  "description": "Check",
  "extends": "status",
  "properties": {
    "check": {
      "type": "boolean"
    },
    "ok": null
  }
}

Check multiple Authorities

Checks whether one or more authorities against the specified stack are granted for a given set of users
POST /stacks/authorities/check

Parameters

This function has no parameters.

Response

{
  "type": "object",
  "description": "Check Multiple Authorities Out",
  "properties": {
    "checks": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "permissionedId": {
            "type": "string"
          },
          "principalId": {
            "type": "string"
          },
          "authorityId": {
            "type": "string"
          },
          "result": {
            "type": "boolean"
          }
        }
      }
    }
  }
}

Check multiple Permissions

Checks whether one or more permissions against the specified stack are granted for a given set of users
POST /stacks/permissions/check

Parameters

This function has no parameters.

Response

{
  "type": "object",
  "description": "Check Multiple Permissions Out",
  "properties": {
    "checks": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "permissionedId": {
            "type": "string"
          },
          "principalId": {
            "type": "string"
          },
          "permissionId": {
            "type": "string"
          },
          "result": {
            "type": "boolean"
          }
        }
      }
    }
  }
}

Create Stack

Creates a new Stack
POST /stacks

Parameters

This function has no parameters.

Response

{
  "type": "object",
  "description": "Status of Operation",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Indicates whether the operation succeeded or not"
    }
  }
}

Create a Team

Creates a Team against the given stack
POST /stacks/{stackId}/teams

Parameters

Name Required Type Description
stackId true string

Response

{
  "type": "object",
  "extends": "document",
  "description": "Team",
  "properties": {
    "teamableObjectTypeId": {
      "type": "string",
      "readonly": true
    },
    "teamableObjectId": {
      "type": "string",
      "readonly": true
    },
    "key": {
      "type": "string"
    },
    "groupId": {
      "type": "string"
    },
    "groupDomainId": {
      "type": "string"
    },
    "roleKeys": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "_doc": null,
    "_system": null
  }
}

Creates a role for a stack

Creates a role for a stack
POST /stacks/{stackId}/roles

Parameters

Name Required Type Description
stackId true string
HTTP Payload true string HTTP Payload

Response

{
  "type": "object",
  "description": "Status of Operation",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Indicates whether the operation succeeded or not"
    }
  }
}

Datastores

GET /stacks/{stackId}/datastores

Parameters

Name Required Type Description
stackId true string

Response

{}

Delete Stack

Deletes an existing Stack
DELETE /stacks/{stackId}

Parameters

Name Required Type Description
stackId true string

Response

{
  "type": "object",
  "description": "Status of Operation",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Indicates whether the operation succeeded or not"
    }
  }
}

Delete Stack

Deletes an existing Stack
POST /stacks/{stackId}/delete

Parameters

Name Required Type Description
stackId true string

Response

{
  "type": "object",
  "description": "Status of Operation",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Indicates whether the operation succeeded or not"
    }
  }
}

Deletes a Team

Deletes a Team against the given stack
DELETE /stacks/{stackId}/teams/{teamKey}

Parameters

Name Required Type Description
stackId true string
teamKey true string

Response

{
  "type": "object",
  "description": "Status of Operation",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Indicates whether the operation succeeded or not"
    }
  }
}

Deletes a role for a stack

Deletes a role for a stack
POST /stacks/{stackId}/roles/{roleKeyOrId}/delete

Parameters

Name Required Type Description
stackId true string
roleKeyOrId true string

Response

{
  "type": "object",
  "description": "Status of Operation",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Indicates whether the operation succeeded or not"
    }
  }
}

Deletes a role for a stack

Deletes a role for a stack
DELETE /stacks/{stackId}/roles/{roleKeyOrId}

Parameters

Name Required Type Description
stackId true string
roleKeyOrId true string

Response

{
  "type": "object",
  "description": "Status of Operation",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Indicates whether the operation succeeded or not"
    }
  }
}

Exists

POST /stacks/{stackId}/datastores/exists

Parameters

Name Required Type Description
stackId true string
key true string

Response

{}

Get Team

Retrieves a Team against the given stack
GET /stacks/{stackId}/teams/{teamKey}

Parameters

Name Required Type Description
stackId true string
teamKey true string

Response

{
  "type": "object",
  "extends": "document",
  "description": "Team",
  "properties": {
    "teamableObjectTypeId": {
      "type": "string",
      "readonly": true
    },
    "teamableObjectId": {
      "type": "string",
      "readonly": true
    },
    "key": {
      "type": "string"
    },
    "groupId": {
      "type": "string"
    },
    "groupDomainId": {
      "type": "string"
    },
    "roleKeys": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "_doc": null,
    "_system": null
  }
}

Grant Authority

Grants an authority against the specified stack to a given user
POST /stacks/{stackId}/authorities/{authorityId}/grant

Parameters

Name Required Type Description
stackId true string
authorityId true string
id true string

Response

{
  "type": "object",
  "description": "Status of Operation",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Indicates whether the operation succeeded or not"
    }
  }
}

Grant Authority to Team

Assigns an Authority to a Team for the given stack
POST /stacks/{stackId}/teams/{teamKey}/authorities/{authorityId}/grant

Parameters

Name Required Type Description
stackId true string
teamKey true string
authorityId true string

Response

{
  "type": "object",
  "description": "Status of Operation",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Indicates whether the operation succeeded or not"
    }
  }
}

List Team Authorities

Retrieves a list of the authorities defined to be granted by a Team
GET /stacks/{stackId}/teams/{teamKey}/authorities

Parameters

Name Required Type Description
stackId true string
teamKey true string

Response

{
  "type": "object",
  "description": "List of Authorities",
  "properties": {
    "authorities": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  }
}

List Teams

Lists the Teams against the given stack
GET /stacks/{stackId}/teams

Parameters

Name Required Type Description
stackId true string

Response

{
  "type": "object",
  "description": "Result Map",
  "properties": {
    "total_rows": {
      "type": "number"
    },
    "offset": {
      "type": "number"
    },
    "size": {
      "type": "number"
    },
    "rows": {
      "type": "array",
      "items": {
        "type": "object"
      }
    }
  }
}

Lists Stack

Retrieves a list of Stack instances
GET /stacks

Parameters

Name Required Type Description
sort false object Defines how to sort fields in the result set
skip false number Skips the result set cursor ahead the specified number of records
limit false number Specifies the number of records to be handed back in the result set

Response

{
  "type": "object",
  "description": "Result Map",
  "properties": {
    "total_rows": {
      "type": "number"
    },
    "offset": {
      "type": "number"
    },
    "size": {
      "type": "number"
    },
    "rows": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/resultmap_stack"
      }
    }
  }
}

Lists Team Members

Lists the members of a Team against the given stack
GET /stacks/{stackId}/teams/{teamKey}/members

Parameters

Name Required Type Description
stackId true string
teamKey true string

Response

{
  "type": "object",
  "description": "Result Map",
  "properties": {
    "total_rows": {
      "type": "number"
    },
    "offset": {
      "type": "number"
    },
    "size": {
      "type": "number"
    },
    "rows": {
      "type": "array",
      "items": {
        "type": "object"
      }
    }
  }
}

Lists the roles for a stack

Lists the roles for a stack
GET /stacks/{stackId}/roles

Parameters

Name Required Type Description
stackId true string
inherited false string

Response

{
  "type": "object",
  "description": "Result Map",
  "properties": {
    "total_rows": {
      "type": "number"
    },
    "offset": {
      "type": "number"
    },
    "size": {
      "type": "number"
    },
    "rows": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/resultmap"
      }
    }
  }
}

Logfile

GET /stacks/{stackId}/logs/logfile

Parameters

Name Required Type Description
stackId true string The ID of the stack

Response

{}

Logs

GET /stacks/{stackId}/logs

Parameters

Name Required Type Description
stackId true string

Response

{}

Queries for Stack

Queries for instances of type Stack
POST /stacks/query

Parameters

Name Required Type Description
sort false object Defines how to sort fields in the result set
skip false number Skips the result set cursor ahead the specified number of records
limit false number Specifies the number of records to be handed back in the result set

Response

{
  "type": "object",
  "description": "Result Map",
  "properties": {
    "total_rows": {
      "type": "number"
    },
    "offset": {
      "type": "number"
    },
    "size": {
      "type": "number"
    },
    "rows": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/resultmap_stack"
      }
    }
  }
}

Query

Queries for matches
POST /stacks/{stackId}/datastores/query

Parameters

Name Required Type Description
stackId true string
sort false object Defines how to sort fields in the result set
skip false number Skips the result set cursor ahead the specified number of records
limit false number Specifies the number of records to be handed back in the result set

Response

{
  "type": "object",
  "description": "Result Map",
  "properties": {
    "total_rows": {
      "type": "number"
    },
    "offset": {
      "type": "number"
    },
    "size": {
      "type": "number"
    },
    "rows": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/resultmap"
      }
    }
  }
}

Query

Queries for matches
POST /stacks/{stackId}/logs/query

Parameters

Name Required Type Description
stackId true string
sort false object Defines how to sort fields in the result set
skip false number Skips the result set cursor ahead the specified number of records
limit false number Specifies the number of records to be handed back in the result set

Response

{
  "type": "object",
  "description": "Result Map",
  "properties": {
    "total_rows": {
      "type": "number"
    },
    "offset": {
      "type": "number"
    },
    "size": {
      "type": "number"
    },
    "rows": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/resultmap"
      }
    }
  }
}

Read ACL

Read the Access Control List for the specified stack
GET /stacks/{stackId}/acl/list

Parameters

Name Required Type Description
stackId true string

Response

{
  "type": "object",
  "description": "Result Map of ACL entries",
  "properties": {
    "total_rows": {
      "type": "number"
    },
    "offset": {
      "type": "number"
    },
    "size": {
      "type": "number"
    },
    "rows": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "_doc": {
            "type": "string",
            "title": "Principal ID"
          },
          "name": {
            "type": "string",
            "title": "Principal Name"
          },
          "type": {
            "type": "string",
            "title": "Principal Type"
          },
          "domainId": {
            "type": "string"
          },
          "domainQualifiedId": {
            "type": "string"
          },
          "domainQualifiedName": {
            "type": "string"
          },
          "principalId": {
            "type": "string",
            "title": "Principal ID"
          },
          "userEmail": {
            "type": "string"
          },
          "userFirstName": {
            "type": "string"
          },
          "userLastName": {
            "type": "string"
          },
          "authorities": {
            "type": "array",
            "title": "Authorities",
            "items": {
              "type": "string",
              "title": "Authority Key"
            }
          }
        }
      }
    }
  }
}

Read ACL for Principal

Reads the ACL for a stack and specific actor
GET /stacks/{stackId}/acl

Parameters

Name Required Type Description
stackId true string
id true string

Response

{
  "type": "object",
  "description": "Result Map of Authority Keys",
  "properties": {
    "total_rows": {
      "type": "number"
    },
    "offset": {
      "type": "number"
    },
    "size": {
      "type": "number"
    },
    "rows": {
      "type": "array",
      "items": {
        "type": "string",
        "description": "Authority Key"
      }
    }
  }
}

Read Authorities Report

Read the Authorities Report for the specified stack
POST /stacks/{stackId}/authorities

Parameters

Name Required Type Description
stackId true string

Response

{
  "type": "object",
  "description": "Authority Report",
  "properties": {
    "principalId": {
      "type": "object",
      "properties": {
        "id": {
          "type": "object",
          "properties": {
            "role-key": {
              "type": "string"
            },
            "principal": {
              "type": "string"
            },
            "permissioned": {
              "type": "string"
            },
            "inheritsFrom": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string"
                },
                "principal": {
                  "type": "string"
                },
                "permissioned": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    }
  }
}

Read Stack

Reads an instance of a Stack
GET /stacks/{stackId}

Parameters

Name Required Type Description
stackId true string

Response

{
  "type": "object",
  "extends": "document",
  "description": "Stack",
  "container": "platform",
  "properties": {
    "key": {
      "type": "string"
    },
    "_doc": null,
    "_system": null
  }
}

Reads a role for a stack

Reads a role for a stack
GET /stacks/{stackId}/roles/{roleKeyOrId}

Parameters

Name Required Type Description
stackId true string
roleKeyOrId true string
inherited false string

Response

{
  "$ref": "#/components/schemas/"
}

Remove Team Member

Remove a principal from a team's membership list
POST /stacks/{stackId}/teams/{teamKey}/members/remove

Parameters

Name Required Type Description
stackId true string
teamKey true string
id true string

Response

{
  "type": "object",
  "description": "Status of Operation",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Indicates whether the operation succeeded or not"
    }
  }
}

Revoke Authority

Revokes an authority against the specified stack from a given user
POST /stacks/{stackId}/authorities/{authorityId}/revoke

Parameters

Name Required Type Description
stackId true string
authorityId true string
id true string

Response

{
  "type": "object",
  "description": "Status of Operation",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Indicates whether the operation succeeded or not"
    }
  }
}

Revoke Authority from Team

Revokes an Authority from a Team for the given stack
POST /stacks/{stackId}/teams/{teamKey}/authorities/{authorityId}/revoke

Parameters

Name Required Type Description
stackId true string
teamKey true string
authorityId true string

Response

{
  "type": "object",
  "description": "Status of Operation",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Indicates whether the operation succeeded or not"
    }
  }
}

Starts an export job for this resource

Starts an export job for this resource
POST /stacks/{stackId}/export

Parameters

Name Required Type Description
stackId true string
groupId false string The Group ID to be assigned to the exported archive
artifactId false string The Artifact ID to be assigned to the exported archive
versionId false string The Version ID to be assigned to the exported archive
vaultId false string The ID of the vault where the exported archive should be saved
schedule false string Whether to run the job immediately or in the background (either 'synchronous' or 'asynchronous')

Response

{
  "type": "object",
  "description": "Export Configuration",
  "properties": {
    "startDate": {
      "type": "object"
    },
    "endDate": {
      "type": "object"
    },
    "startChangeset": {
      "type": "string"
    },
    "endChangeset": {
      "type": "string"
    },
    "includeACLs": {
      "type": "boolean"
    },
    "includeTeams": {
      "type": "boolean"
    },
    "includeActivities": {
      "type": "boolean"
    },
    "includeBinaries": {
      "type": "boolean"
    },
    "includeAttachments": {
      "type": "boolean"
    },
    "artifactDependencies": {
      "type": "array",
      "items": {
        "type": "object"
      }
    },
    "artifactIncludes": {
      "type": "array",
      "items": {
        "type": "object"
      }
    },
    "forceIncludes": {
      "type": "boolean"
    }
  }
}

Starts an import job for this resource

Starts an import job for this resource
POST /stacks/{stackId}/import

Parameters

Name Required Type Description
stackId true string
groupId false string The Group ID to be assigned to the exported archive
artifactId false string The Artifact ID to be assigned to the exported archive
versionId false string The Version ID to be assigned to the exported archive
vaultId false string The ID of the vault where the exported archive should be saved
schedule false string Whether to run the job immediately or in the background (either 'synchronous' or 'asynchronous')

Response

{
  "type": "object",
  "description": "Import Configuration",
  "properties": {
    "includeACLs": {
      "type": "boolean"
    },
    "includeTeams": {
      "type": "boolean"
    },
    "includeActivities": {
      "type": "boolean"
    },
    "includeBinaries": {
      "type": "boolean"
    },
    "includeAttachments": {
      "type": "boolean"
    },
    "strategy": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "substitutions": {
      "type": "string"
    }
  }
}

Summarize Access Policy

Retrieves an access policy summary for a Team on the given stack
GET /stacks/{stackId}/teams/{teamKey}/access/policies/summary

Parameters

Name Required Type Description
stackId true string
teamKey true string
scope false string
info false string
order false string

Response

{
  "type": "object",
  "description": "Result Map",
  "properties": {
    "total_rows": {
      "type": "number"
    },
    "offset": {
      "type": "number"
    },
    "size": {
      "type": "number"
    },
    "rows": {
      "type": "array",
      "items": {
        "type": "object"
      }
    }
  }
}

Unassign

POST /stacks/{stackId}/datastores/unassign

Parameters

Name Required Type Description
stackId true string
key true string

Response

{}

Update Stack

Updates an existing Stack
PUT /stacks/{stackId}

Parameters

Name Required Type Description
stackId true string

Response

{
  "type": "object",
  "description": "Status of Operation",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Indicates whether the operation succeeded or not"
    }
  }
}

Update Stack

Updates an existing Stack
POST /stacks/{stackId}/update

Parameters

Name Required Type Description
stackId true string

Response

{
  "type": "object",
  "description": "Status of Operation",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Indicates whether the operation succeeded or not"
    }
  }
}

Update a Team

Updates a Team against the given stack
PUT /stacks/{stackId}/teams/{teamKey}

Parameters

Name Required Type Description
stackId true string
teamKey true string

Response

{
  "type": "object",
  "description": "Status of Operation",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Indicates whether the operation succeeded or not"
    }
  }
}

Updates a role for a stack

Updates a role for a stack
PUT /stacks/{stackId}/roles/{roleKeyOrId}

Parameters

Name Required Type Description
stackId true string
roleKeyOrId true string
HTTP Payload true string HTTP Payload

Response

{
  "type": "object",
  "description": "Status of Operation",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Indicates whether the operation succeeded or not"
    }
  }
}

Updates a role for a stack

Updates a role for a stack
POST /stacks/{stackId}/roles/{roleKeyOrId}/update

Parameters

Name Required Type Description
stackId true string
roleKeyOrId true string
HTTP Payload true string HTTP Payload

Response

{
  "type": "object",
  "description": "Status of Operation",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Indicates whether the operation succeeded or not"
    }
  }
}

{attachmentId}

POST /stacks/{stackId}/attachments/{attachmentId}

Parameters

Name Required Type Description
stackId true string
attachmentId true string

Response

{}

{attachmentId}

GET /stacks/{stackId}/attachments/{attachmentId}

Parameters

Name Required Type Description
stackId true string
attachmentId true string

Response

{}

{attachmentId}

DELETE /stacks/{stackId}/attachments/{attachmentId}

Parameters

Name Required Type Description
stackId true string
attachmentId true string

Response

{}

{datastoreId}

GET /stacks/find/{datastoreType}/{datastoreId}

Parameters

Name Required Type Description
datastoreType true string
datastoreId true string

Response

{}

{key}

GET /stacks/{stackId}/datastores/{key}

Parameters

Name Required Type Description
stackId true string
key true string

Response

{}

{logEntryId}

GET /stacks/{stackId}/logs/{logEntryId}

Parameters

Name Required Type Description
stackId true string
logEntryId true string

Response

{}

{name}

GET /stacks/{stackId}/preview/{name}

Parameters

Name Required Type Description
stackId true string
name true string

Response

{}

Schema


{
  "type": "object",
  "extends": "document",
  "description": "Stack",
  "container": "platform",
  "properties": {
    "key": {
      "type": "string"
    },
    "_doc": null,
    "_system": null
  },
  "id": "stack"
}