Skip to content

Document Server Templates #1712

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 7 commits into from
Oct 9, 2020
Merged
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
114 changes: 114 additions & 0 deletions docs/resources/Template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,114 @@
# Template Resource

### Template Object

Represents a code that when used, creates a new guild duplicated from an existing one.

###### Template Structure

| Field | Type | Description |
| ----------------------- | ---------------------------------------------------------------- | -------------------------------------------- |
| code | string | the invite 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](#DOCS_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 |
| source_guild_id | snowflake | the ID of the guild this template duplicates |
| serialized_source_guild | partial [guild](#DOCS_RESOURCES_GUILD/guild-object) object | the guild this template duplicates |
| is_dirty | ?boolean | whether the template has unsynced changes |

###### Example Template Object

```json
{
"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 Template % GET /guilds/templates/{template.code#DOCS_RESOURCES_TEMPLATE/template-object}

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

## Create Guild from Template % POST /guilds/templates/{template.code#DOCS_RESOURCES_TEMPLATE/template-object}

Create a new guild based on a template. Returns a [guild](#DOCS_RESOURCES_GUILD/guild-object) object on success. Fires a [Guild Create](#DOCS_TOPICS_GATEWAY/guild-create) Gateway event.

> warn
> This endpoint can be used only by bots in less than 10 guilds.

###### JSON Params

| Field | Type | Description |
| ----- | ---------------------------------------- | --------------------------------------- |
| name | string | name of the guild (2-100 characters) |
| icon? | [image data](#DOCS_REFERENCE/image-data) | base64 128x128 image for the guild icon |