---
title: Create
url: https://www.tines.com/stories/docs/api/cases/case_templates/create/
updated: 2026-08-11T08:03:47+00:00
description: Create a case template in a team. Template names must be unique within the team.
---

*[tines.com](https://www.tines.com/llms.txt) › [Docs](https://www.tines.com/stories/docs/llms.txt) › [Tines API](https://www.tines.com/stories/docs/api/llms.txt) › [Cases](https://www.tines.com/llm/stories/docs/api/cases.md) › [Case templates](https://www.tines.com/llm/stories/docs/api/cases/case_templates.md)*

# Create

*[View on tines.com](https://www.tines.com/stories/docs/api/cases/case_templates/create/)*

## Description

Create a case template in a team. Template names must be unique within the team.

See the [Get Cases API](/api/cases/get) to learn more about cases.

## Request

HTTP Method: **POST**

| Parameter | Description                                                                                                                        |
| --------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| team_id   | The ID of the team to create the case template in.                                                                                 |
| name      | The case template name.                                                                                                            |
| emoji     | **Optional** The emoji associated with the case template, as a shortcode such as `:mag:`. A random emoji is assigned when omitted. |
| options   | **Optional** The case template configuration. See [Options fields](#options-fields) below.                                         |

### Options fields

The `options` object describes the case that gets created from this template.

Formulas are stored as written and evaluated when a case is created from the template, against the event that triggered the case creation. Pass them as raw formula strings wrapped in quotes rather than pill values. Use the [Preview case template API](/api/cases/case_templates/preview) to check the resolved shape of a template - it returns formulas unevaluated, since there is no triggering event to evaluate them against.

| Parameter          | Description                                                                                                                                                                                                                                                                                                    |
| ------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| name               | **Optional** The name given to cases created from this template. Supports formulas and field mentions.                                                                                                                                                                                                         |
| description        | **Optional** The description given to cases created from this template. Supports markdown, formulas and field mentions.                                                                                                                                                                                        |
| status             | **Optional** The status given to cases created from this template - open or closed.                                                                                                                                                                                                                            |
| priority           | **Optional** The priority given to cases created from this template - critical, high, medium, low or info.                                                                                                                                                                                                     |
| sub_status_id      | **Optional** The ID of the case sub-status given to cases created from this template.                                                                                                                                                                                                                          |
| assignee_emails    | **Optional** An array of user email addresses to assign. Emails that do not match a user on the team are dropped.                                                                                                                                                                                              |
| tag_names          | **Optional** An array of tag name strings. Tags are found or created on the team.                                                                                                                                                                                                                              |
| team_case_buttons  | **Optional** An array of case action objects for downstream actions associated with the case. Each object has `button_type` (one of `webhook`, `page`, `chat`, `story`, or `app`), `url`, `label` (tooltip), and `button_text` (text shown on the button).                                                     |
| tasks              | **Optional** An array of task objects. Each object has a `description` and an optional `assignee_emails` array.                                                                                                                                                                                                |
| closure_conditions | **Optional** An array of closure requirements in the form of a set of formula rules that need to evaluate to true to enable the closing of a case. Each entry has a `name` and a `formula`. <br><br> **N.B.** The formula key should be passed as a raw formula wrapped in strings as opposed to a pill value. |
| blocks             | **Optional** An array of block objects. See [block parameters](#block-parameters) below.                                                                                                                                                                                                                       |
| field_values       | **Optional** An object containing a key-value pair of field IDs and the values those fields are pre-filled with. Field IDs provided must exist within the team.                                                                                                                                                |
| metadata           | **Optional** Case related metadata represented as key-value pairs.                                                                                                                                                                                                                                             |

### Block parameters

Each object in the `blocks` array accepts:

| Parameter         | Description                                                                                                                       |
| ----------------- | --------------------------------------------------------------------------------------------------------------------------------- |
| title             | The title of the block.                                                                                                           |
| block_type        | The type of block to create - options: note, file, linked_cases, metadata, closure_conditions, case_action, block_group and html. |
| elements          | An array of elements to add to the block. Required but may be empty for block types that do not support elements.                 |
| hidden            | **Optional** A boolean (true or false).                                                                                           |
| guid              | **Optional** A client-generated identifier for the block, used for referencing in `parent_block_guid`.                            |
| parent_block_guid | **Optional** The `guid` of a block_group block within the same request to nest this block inside.                                 |

#### Note element parameters

| Parameter | Description                                                                                         |
| --------- | --------------------------------------------------------------------------------------------------- |
| content   | The content of the note.                                                                            |
| note_type | The type of note - "html" for html blocks and "text" for any others.                                |
| color     | **Optional** The color of the note - options: white, gold, magenta, green, blue, red, mint, indigo. |
| sensitive | **Optional** A boolean (true or false) indicating whether the element holds sensitive content.      |

### Sample request

<!-- cspell:disable -->

```bash
curl -X POST \
  https://<tenant-domain>/api/v1/case_templates \
  -H 'content-type: application/json' \
  -H 'Authorization: Bearer <<CREDENTIAL.tines_api_key>>' \
  -d '{
        "team_id": 2,
        "name": "Phishing investigation",
        "emoji": ":fishing_pole_and_fish:",
        "options": {
          "name": "Phishing report for <<recipient>>",
          "description": "Investigate the reported email",
          "priority": "high",
          "tag_names": ["phishing", "email"],
          "assignee_emails": ["analyst@example.com"],
          "tasks": [
            {
              "description": "Review headers and attachments",
              "assignee_emails": ["analyst@example.com"]
            }
          ],
          "closure_conditions": [
            {
              "name": "has at least 1 assignee",
              "formula": "=SIZE(team_case.assignees) > 0"
            }
          ],
          "metadata": {
            "source": "user_report"
          }
        }
      }'
```

<!-- cspell:enable -->

## Response

A successful request will return a JSON object representing the created case template.

### Field description

| Parameter  | Description                                                                      |
| ---------- | -------------------------------------------------------------------------------- |
| id         | The case template ID.                                                            |
| name       | The case template name.                                                          |
| emoji      | The emoji associated with the case template.                                     |
| team       | The team the case template belongs to - ID and name.                             |
| created_at | ISO 8601 timestamp representing the date and time the case template was created. |
| updated_at | ISO 8601 timestamp representing the date and time the case template was updated. |

### Sample response

<!-- cspell:disable -->

```json
{
  "id": 12,
  "name": "Phishing investigation",
  "emoji": ":fishing_pole_and_fish:",
  "team": {
    "id": 2,
    "name": "Security"
  },
  "created_at": "2026-05-25T10:00:00Z",
  "updated_at": "2026-05-25T10:00:00Z"
}
```

<!-- cspell:enable -->
