# Get Analytics Template Install Plan

See what a template needs before you install it: the apps to connect, the connections you can pick for each, and, for a bundle, its pages. Then call Install Analytics Template with a connection id (or null to skip) for every app.

`GET https://connect.mindcloud.co/v2/analytics/templates/:templateId/install-plan`

Permissions: `analytics:page:view`.

## Parameters

### Path

- `templateId` (string, required): The template id, from List Analytics Templates.

### Headers

- `X-Company-Id` (string): Optional. The id of the organization to act in. Leave it out to act in the API key's own organization. Here a key acts in another organization only as one of its members: with "Use this key across all of your organizations" on, in an organization its creator belongs to with a role. Child organizations and MindCloud staff access do not reach this endpoint. Every response's X-Company-Id header names the organization it acted in. See [Organizations](https://mindcloud.co/docs/api/rest/introduction/organizations).

## Example request

```bash
curl --request GET \
  --url 'https://connect.mindcloud.co/v2/analytics/templates/Tp8Hm4Zk2RwN/install-plan' \
  --header 'Authorization: Bearer $MINDCLOUD_API_TOKEN'
```

## Response fields

- `templateId` (string): The template the plan is for, from List Analytics Templates.
- `kind` (string): page installs one page; bundle installs its members as pages in a new folder.
  Allowed values:
    - `page`
    - `bundle`
- `apps` (array of objects): Every app the install needs, each with the connections it accepts. Install Analytics Template takes a connection id or null (skip it) for every one.
  - `appId` (string): The app. Use it, or appSlug, as the key in Install Analytics Template connections.
  - `appSlug` (string): The app's slug, as List Universal Apps answers it.
  - `appName` (string): The app's name.
  - `dataSourceCount` (number): How many of the template's data sources read this app.
  - `panelCount` (number): How many panels show nothing until this app is connected.
  - `connections` (array): The connections the install accepts for this app: your own and the organization's shared ones. Empty when you have none; connect the app in MindCloud first, or skip it.
    - `id` (string): The connection id, as List Connections answers it. Pass it in connections to wire the app.
    - `name` (string): The connection name, as List Connections answers it.
    - `status` (string): The connection's status after its last sign-in, test or use.
    - `isCompany` (boolean): Whether it is one of the organization's shared connections rather than the creator's own, as List Connections answers it.
- `members` (array of objects): For a bundle, its templates and whether you can install each; empty for a page template.
  - `id` (string): The member template id. Pass it in templateIds to install only some members.
  - `name` (string): The member template name.
  - `canInstall` (boolean): Whether you can install this member.

## Errors

- 404 Template not found (ANALYTICS_TEMPLATE_NOT_FOUND): `NOT_FOUND` / `ANALYTICS_TEMPLATE_NOT_FOUND` "The template was not found."
