> ## Documentation Index
> Fetch the complete documentation index at: https://discord-platform-username.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Guild Template Resource

> Reference for Discord Guild Template objects and management endpoints.

export const Route = ({method, children}) => {
  return <div className="MDXRoute">
      <span className={"verb" + " " + method.toLowerCase()}>{method}</span>
      <span className="url">{children}</span>
    </div>;
};

export const ManualAnchor = ({id}) => {
  return <div className="MDXManualAnchor" id={id}></div>;
};

### Guild Template Object

Represents a code that when used, creates a guild based on a snapshot of an existing guild.

<ManualAnchor id="guild-template-object-guild-template-structure" />

###### Guild Template Structure

| Field                     | Type                                                             | Description                                                                      |
| ------------------------- | ---------------------------------------------------------------- | -------------------------------------------------------------------------------- |
| code                      | string                                                           | the template code (unique ID)                                                    |
| name                      | string                                                           | template name                                                                    |
| description               | ?string                                                          | the description for the template                                                 |
| usage\_count              | integer                                                          | number of times this template has been used                                      |
| creator\_id               | snowflake                                                        | the ID of the user who created the template                                      |
| creator                   | [user](/developers/resources/user#user-object) object            | the user who created the template                                                |
| created\_at               | ISO8601 timestamp                                                | when this template was created                                                   |
| updated\_at               | ISO8601 timestamp                                                | when this template was last synced to the source guild                           |
| source\_guild\_id         | snowflake                                                        | the ID of the guild this template is based on                                    |
| serialized\_source\_guild | partial [guild](/developers/resources/guild#guild-object) object | the guild snapshot this template contains; placeholder IDs are given as integers |
| is\_dirty                 | ?boolean                                                         | whether the template has unsynced changes                                        |

<ManualAnchor id="guild-template-object-example-guild-template-object" />

###### Example Guild Template Object

```json theme={null}
{
  "code": "hgM48av5Q69A",
  "name": "Friends & Family",
  "description": "",
  "usage_count": 49605,
  "creator_id": "132837293881950208",
  "creator": {
    "id": "132837293881950208",
    "username": "hoges",
    "avatar": "79b0d9f8c340f2d43e1f78b09f175b62",
    "discriminator": "0001",
    "public_flags": 129
  },
  "created_at": "2020-04-02T21:10:38+00:00",
  "updated_at": "2020-05-01T17:57:38+00:00",
  "source_guild_id": "678070694164299796",
  "serialized_source_guild": {
    "name": "Friends & Family",
    "description": null,
    "region": "us-west",
    "verification_level": 0,
    "default_message_notifications": 0,
    "explicit_content_filter": 0,
    "preferred_locale": "en-US",
    "afk_timeout": 300,
    "roles": [
      {
        "id": 0,
        "name": "@everyone",
        "permissions": 104324689,
        "color": 0,
        "hoist": false,
        "mentionable": false
      }
    ],
    "channels": [
      {
        "name": "Text Channels",
        "position": 1,
        "topic": null,
        "bitrate": 64000,
        "user_limit": 0,
        "nsfw": false,
        "rate_limit_per_user": 0,
        "parent_id": null,
        "permission_overwrites": [],
        "id": 1,
        "type": 4
      },
      {
        "name": "general",
        "position": 1,
        "topic": null,
        "bitrate": 64000,
        "user_limit": 0,
        "nsfw": false,
        "rate_limit_per_user": 0,
        "parent_id": 1,
        "permission_overwrites": [],
        "id": 2,
        "type": 0
      }
    ],
    "afk_channel_id": null,
    "system_channel_id": 2,
    "system_channel_flags": 0,
    "icon_hash": null
  },
  "is_dirty": null
}
```

## Get Guild Template

<Route method="GET">/guilds/templates/[\{template.code}](/developers/resources/guild-template#guild-template-object)</Route>

Returns a [guild template](/developers/resources/guild-template#guild-template-object) object for the given code.

## Get Guild Templates

<Route method="GET">/guilds/[\{guild.id}](/developers/resources/guild#guild-object)/templates</Route>

Returns an array of [guild template](/developers/resources/guild-template#guild-template-object) objects. Requires the `MANAGE_GUILD` permission.

## Create Guild Template

<Route method="POST">/guilds/[\{guild.id}](/developers/resources/guild#guild-object)/templates</Route>

Creates a template for the guild. Requires the `MANAGE_GUILD` permission. Returns the created [guild template](/developers/resources/guild-template#guild-template-object) object on success.

<ManualAnchor id="create-guild-template-json-params" />

###### JSON Params

| Field        | Type    | Description                                     |
| ------------ | ------- | ----------------------------------------------- |
| name         | string  | name of the template (1-100 characters)         |
| description? | ?string | description for the template (0-120 characters) |

## Sync Guild Template

<Route method="PUT">/guilds/[\{guild.id}](/developers/resources/guild#guild-object)/templates/[\{template.code}](/developers/resources/guild-template#guild-template-object)</Route>

Syncs the template to the guild's current state. Requires the `MANAGE_GUILD` permission. Returns the [guild template](/developers/resources/guild-template#guild-template-object) object on success.

## Modify Guild Template

<Route method="PATCH">/guilds/[\{guild.id}](/developers/resources/guild#guild-object)/templates/[\{template.code}](/developers/resources/guild-template#guild-template-object)</Route>

Modifies the template's metadata. Requires the `MANAGE_GUILD` permission. Returns the [guild template](/developers/resources/guild-template#guild-template-object) object on success.

<ManualAnchor id="modify-guild-template-json-params" />

###### JSON Params

| Field        | Type    | Description                                     |
| ------------ | ------- | ----------------------------------------------- |
| name?        | string  | name of the template (1-100 characters)         |
| description? | ?string | description for the template (0-120 characters) |

## Delete Guild Template

<Route method="DELETE">/guilds/[\{guild.id}](/developers/resources/guild#guild-object)/templates/[\{template.code}](/developers/resources/guild-template#guild-template-object)</Route>

Deletes the template. Requires the `MANAGE_GUILD` permission. Returns the deleted [guild template](/developers/resources/guild-template#guild-template-object) object on success.
