mirror of
https://github.com/discordjs/discord-api-types.git
synced 2026-05-29 23:00:08 +00:00
feat: guild onboarding (#713)
This commit is contained in:
@@ -3,7 +3,7 @@
|
||||
*/
|
||||
|
||||
import type { Permissions, Snowflake } from '../../globals.ts';
|
||||
import type { APIEmoji } from './emoji.ts';
|
||||
import type { APIEmoji, APIPartialEmoji } from './emoji.ts';
|
||||
import type { PresenceUpdateStatus } from './gateway.ts';
|
||||
import type { OAuth2Scopes } from './oauth2.ts';
|
||||
import type { APIRole } from './permissions.ts';
|
||||
@@ -999,3 +999,98 @@ export enum MembershipScreeningFieldType {
|
||||
*/
|
||||
Terms = 'TERMS',
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#guild-onboarding-object-guild-onboarding-structure
|
||||
*/
|
||||
export interface APIGuildOnboarding {
|
||||
/**
|
||||
* Id of the guild this onboarding is part of
|
||||
*/
|
||||
guild_id: Snowflake;
|
||||
/**
|
||||
* Prompts shown during onboarding and in customize community
|
||||
*/
|
||||
prompts: APIGuildOnboardingPrompt[];
|
||||
/**
|
||||
* Channel ids that members get opted into automatically
|
||||
*/
|
||||
default_channel_ids: Snowflake[];
|
||||
/**
|
||||
* Whether onboarding is enabled in the guild
|
||||
*/
|
||||
enabled: boolean;
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#guild-onboarding-object-onboarding-prompt-structure
|
||||
*/
|
||||
export interface APIGuildOnboardingPrompt {
|
||||
/**
|
||||
* Id of the prompt
|
||||
*/
|
||||
id: Snowflake;
|
||||
/**
|
||||
* Options available within the prompt
|
||||
*/
|
||||
options: APIGuildOnboardingPromptOption[];
|
||||
/**
|
||||
* Title of the prompt
|
||||
*/
|
||||
title: string;
|
||||
/**
|
||||
* Indicates whether users are limited to selecting one option for the prompt
|
||||
*/
|
||||
single_select: boolean;
|
||||
/**
|
||||
* Indicates whether the prompt is required before a user completes the onboarding flow
|
||||
*/
|
||||
required: boolean;
|
||||
/**
|
||||
* Indicates whether the prompt is present in the onboarding flow.
|
||||
* If `false`, the prompt will only appear in the Channels & Roles tab
|
||||
*/
|
||||
in_onboarding: boolean;
|
||||
/**
|
||||
* Type of prompt
|
||||
*/
|
||||
type: GuildOnboardingPromptType;
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#guild-onboarding-object-prompt-option-structure
|
||||
*/
|
||||
export interface APIGuildOnboardingPromptOption {
|
||||
/**
|
||||
* Id of the prompt option
|
||||
*/
|
||||
id: Snowflake;
|
||||
/**
|
||||
* Ids for channels a member is added to when the option is selected
|
||||
*/
|
||||
channel_ids: Snowflake[];
|
||||
/**
|
||||
* Ids for roles assigned to a member when the option is selected
|
||||
*/
|
||||
role_ids: Snowflake[];
|
||||
/**
|
||||
* Emoji of the option
|
||||
*/
|
||||
emoji: APIPartialEmoji;
|
||||
/**
|
||||
* Title of the option
|
||||
*/
|
||||
title: string;
|
||||
/**
|
||||
* Description of the option
|
||||
*/
|
||||
description: string | null;
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#guild-onboarding-object-prompt-types
|
||||
*/
|
||||
export enum GuildOnboardingPromptType {
|
||||
MultipleChoice,
|
||||
Dropdown,
|
||||
}
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
*/
|
||||
|
||||
import type { Permissions, Snowflake } from '../../globals.ts';
|
||||
import type { APIEmoji } from './emoji.ts';
|
||||
import type { APIEmoji, APIPartialEmoji } from './emoji.ts';
|
||||
import type { PresenceUpdateStatus } from './gateway.ts';
|
||||
import type { OAuth2Scopes } from './oauth2.ts';
|
||||
import type { APIRole } from './permissions.ts';
|
||||
@@ -991,3 +991,98 @@ export enum MembershipScreeningFieldType {
|
||||
*/
|
||||
Terms = 'TERMS',
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#guild-onboarding-object-guild-onboarding-structure
|
||||
*/
|
||||
export interface APIGuildOnboarding {
|
||||
/**
|
||||
* Id of the guild this onboarding is part of
|
||||
*/
|
||||
guild_id: Snowflake;
|
||||
/**
|
||||
* Prompts shown during onboarding and in customize community
|
||||
*/
|
||||
prompts: APIGuildOnboardingPrompt[];
|
||||
/**
|
||||
* Channel ids that members get opted into automatically
|
||||
*/
|
||||
default_channel_ids: Snowflake[];
|
||||
/**
|
||||
* Whether onboarding is enabled in the guild
|
||||
*/
|
||||
enabled: boolean;
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#guild-onboarding-object-onboarding-prompt-structure
|
||||
*/
|
||||
export interface APIGuildOnboardingPrompt {
|
||||
/**
|
||||
* Id of the prompt
|
||||
*/
|
||||
id: Snowflake;
|
||||
/**
|
||||
* Options available within the prompt
|
||||
*/
|
||||
options: APIGuildOnboardingPromptOption[];
|
||||
/**
|
||||
* Title of the prompt
|
||||
*/
|
||||
title: string;
|
||||
/**
|
||||
* Indicates whether users are limited to selecting one option for the prompt
|
||||
*/
|
||||
single_select: boolean;
|
||||
/**
|
||||
* Indicates whether the prompt is required before a user completes the onboarding flow
|
||||
*/
|
||||
required: boolean;
|
||||
/**
|
||||
* Indicates whether the prompt is present in the onboarding flow.
|
||||
* If `false`, the prompt will only appear in the Channels & Roles tab
|
||||
*/
|
||||
in_onboarding: boolean;
|
||||
/**
|
||||
* Type of prompt
|
||||
*/
|
||||
type: GuildOnboardingPromptType;
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#guild-onboarding-object-prompt-option-structure
|
||||
*/
|
||||
export interface APIGuildOnboardingPromptOption {
|
||||
/**
|
||||
* Id of the prompt option
|
||||
*/
|
||||
id: Snowflake;
|
||||
/**
|
||||
* Ids for channels a member is added to when the option is selected
|
||||
*/
|
||||
channel_ids: Snowflake[];
|
||||
/**
|
||||
* Ids for roles assigned to a member when the option is selected
|
||||
*/
|
||||
role_ids: Snowflake[];
|
||||
/**
|
||||
* Emoji of the option
|
||||
*/
|
||||
emoji: APIPartialEmoji;
|
||||
/**
|
||||
* Title of the option
|
||||
*/
|
||||
title: string;
|
||||
/**
|
||||
* Description of the option
|
||||
*/
|
||||
description: string | null;
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#guild-onboarding-object-prompt-types
|
||||
*/
|
||||
export enum GuildOnboardingPromptType {
|
||||
MultipleChoice,
|
||||
Dropdown,
|
||||
}
|
||||
|
||||
@@ -9,6 +9,7 @@ import type {
|
||||
APIGuildIntegration,
|
||||
APIGuildMember,
|
||||
APIGuildMembershipScreening,
|
||||
APIGuildOnboarding,
|
||||
APIGuildPreview,
|
||||
APIGuildWelcomeScreen,
|
||||
APIGuildWidget,
|
||||
@@ -916,3 +917,8 @@ export type RESTPatchAPIGuildWelcomeScreenJSONBody = Nullable<StrictPartial<APIG
|
||||
* https://discord.com/developers/docs/resources/guild#modify-guild-welcome-screen
|
||||
*/
|
||||
export type RESTPatchAPIGuildWelcomeScreenResult = APIGuildWelcomeScreen;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#get-guild-onboarding
|
||||
*/
|
||||
export type RESTGetAPIGuildOnboardingResult = APIGuildOnboarding;
|
||||
|
||||
@@ -879,6 +879,14 @@ export const Routes = {
|
||||
guildScheduledEventUsers(guildId: Snowflake, guildScheduledEventId: Snowflake) {
|
||||
return `/guilds/${guildId}/scheduled-events/${guildScheduledEventId}/users` as const;
|
||||
},
|
||||
|
||||
/**
|
||||
* Route for:
|
||||
* - GET `/guilds/${guild.id}/onboarding`
|
||||
*/
|
||||
guildOnboarding(guildId: Snowflake) {
|
||||
return `/guilds/${guildId}/onboarding` as const;
|
||||
},
|
||||
};
|
||||
|
||||
export const StickerPackApplicationId = '710982414301790216';
|
||||
|
||||
@@ -7,6 +7,7 @@ import type {
|
||||
APIGuildIntegration,
|
||||
APIGuildMember,
|
||||
APIGuildMembershipScreening,
|
||||
APIGuildOnboarding,
|
||||
APIGuildPreview,
|
||||
APIGuildWelcomeScreen,
|
||||
APIGuildWidget,
|
||||
@@ -922,3 +923,8 @@ export type RESTPatchAPIGuildWelcomeScreenJSONBody = Nullable<StrictPartial<APIG
|
||||
* https://discord.com/developers/docs/resources/guild#modify-guild-welcome-screen
|
||||
*/
|
||||
export type RESTPatchAPIGuildWelcomeScreenResult = APIGuildWelcomeScreen;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#get-guild-onboarding
|
||||
*/
|
||||
export type RESTGetAPIGuildOnboardingResult = APIGuildOnboarding;
|
||||
|
||||
@@ -888,6 +888,14 @@ export const Routes = {
|
||||
guildScheduledEventUsers(guildId: Snowflake, guildScheduledEventId: Snowflake) {
|
||||
return `/guilds/${guildId}/scheduled-events/${guildScheduledEventId}/users` as const;
|
||||
},
|
||||
|
||||
/**
|
||||
* Route for:
|
||||
* - GET `/guilds/${guild.id}/onboarding`
|
||||
*/
|
||||
guildOnboarding(guildId: Snowflake) {
|
||||
return `/guilds/${guildId}/onboarding` as const;
|
||||
},
|
||||
};
|
||||
|
||||
export const StickerPackApplicationId = '710982414301790216';
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
*/
|
||||
|
||||
import type { Permissions, Snowflake } from '../../globals';
|
||||
import type { APIEmoji } from './emoji';
|
||||
import type { APIEmoji, APIPartialEmoji } from './emoji';
|
||||
import type { PresenceUpdateStatus } from './gateway';
|
||||
import type { OAuth2Scopes } from './oauth2';
|
||||
import type { APIRole } from './permissions';
|
||||
@@ -999,3 +999,98 @@ export enum MembershipScreeningFieldType {
|
||||
*/
|
||||
Terms = 'TERMS',
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#guild-onboarding-object-guild-onboarding-structure
|
||||
*/
|
||||
export interface APIGuildOnboarding {
|
||||
/**
|
||||
* Id of the guild this onboarding is part of
|
||||
*/
|
||||
guild_id: Snowflake;
|
||||
/**
|
||||
* Prompts shown during onboarding and in customize community
|
||||
*/
|
||||
prompts: APIGuildOnboardingPrompt[];
|
||||
/**
|
||||
* Channel ids that members get opted into automatically
|
||||
*/
|
||||
default_channel_ids: Snowflake[];
|
||||
/**
|
||||
* Whether onboarding is enabled in the guild
|
||||
*/
|
||||
enabled: boolean;
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#guild-onboarding-object-onboarding-prompt-structure
|
||||
*/
|
||||
export interface APIGuildOnboardingPrompt {
|
||||
/**
|
||||
* Id of the prompt
|
||||
*/
|
||||
id: Snowflake;
|
||||
/**
|
||||
* Options available within the prompt
|
||||
*/
|
||||
options: APIGuildOnboardingPromptOption[];
|
||||
/**
|
||||
* Title of the prompt
|
||||
*/
|
||||
title: string;
|
||||
/**
|
||||
* Indicates whether users are limited to selecting one option for the prompt
|
||||
*/
|
||||
single_select: boolean;
|
||||
/**
|
||||
* Indicates whether the prompt is required before a user completes the onboarding flow
|
||||
*/
|
||||
required: boolean;
|
||||
/**
|
||||
* Indicates whether the prompt is present in the onboarding flow.
|
||||
* If `false`, the prompt will only appear in the Channels & Roles tab
|
||||
*/
|
||||
in_onboarding: boolean;
|
||||
/**
|
||||
* Type of prompt
|
||||
*/
|
||||
type: GuildOnboardingPromptType;
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#guild-onboarding-object-prompt-option-structure
|
||||
*/
|
||||
export interface APIGuildOnboardingPromptOption {
|
||||
/**
|
||||
* Id of the prompt option
|
||||
*/
|
||||
id: Snowflake;
|
||||
/**
|
||||
* Ids for channels a member is added to when the option is selected
|
||||
*/
|
||||
channel_ids: Snowflake[];
|
||||
/**
|
||||
* Ids for roles assigned to a member when the option is selected
|
||||
*/
|
||||
role_ids: Snowflake[];
|
||||
/**
|
||||
* Emoji of the option
|
||||
*/
|
||||
emoji: APIPartialEmoji;
|
||||
/**
|
||||
* Title of the option
|
||||
*/
|
||||
title: string;
|
||||
/**
|
||||
* Description of the option
|
||||
*/
|
||||
description: string | null;
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#guild-onboarding-object-prompt-types
|
||||
*/
|
||||
export enum GuildOnboardingPromptType {
|
||||
MultipleChoice,
|
||||
Dropdown,
|
||||
}
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
*/
|
||||
|
||||
import type { Permissions, Snowflake } from '../../globals';
|
||||
import type { APIEmoji } from './emoji';
|
||||
import type { APIEmoji, APIPartialEmoji } from './emoji';
|
||||
import type { PresenceUpdateStatus } from './gateway';
|
||||
import type { OAuth2Scopes } from './oauth2';
|
||||
import type { APIRole } from './permissions';
|
||||
@@ -991,3 +991,98 @@ export enum MembershipScreeningFieldType {
|
||||
*/
|
||||
Terms = 'TERMS',
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#guild-onboarding-object-guild-onboarding-structure
|
||||
*/
|
||||
export interface APIGuildOnboarding {
|
||||
/**
|
||||
* Id of the guild this onboarding is part of
|
||||
*/
|
||||
guild_id: Snowflake;
|
||||
/**
|
||||
* Prompts shown during onboarding and in customize community
|
||||
*/
|
||||
prompts: APIGuildOnboardingPrompt[];
|
||||
/**
|
||||
* Channel ids that members get opted into automatically
|
||||
*/
|
||||
default_channel_ids: Snowflake[];
|
||||
/**
|
||||
* Whether onboarding is enabled in the guild
|
||||
*/
|
||||
enabled: boolean;
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#guild-onboarding-object-onboarding-prompt-structure
|
||||
*/
|
||||
export interface APIGuildOnboardingPrompt {
|
||||
/**
|
||||
* Id of the prompt
|
||||
*/
|
||||
id: Snowflake;
|
||||
/**
|
||||
* Options available within the prompt
|
||||
*/
|
||||
options: APIGuildOnboardingPromptOption[];
|
||||
/**
|
||||
* Title of the prompt
|
||||
*/
|
||||
title: string;
|
||||
/**
|
||||
* Indicates whether users are limited to selecting one option for the prompt
|
||||
*/
|
||||
single_select: boolean;
|
||||
/**
|
||||
* Indicates whether the prompt is required before a user completes the onboarding flow
|
||||
*/
|
||||
required: boolean;
|
||||
/**
|
||||
* Indicates whether the prompt is present in the onboarding flow.
|
||||
* If `false`, the prompt will only appear in the Channels & Roles tab
|
||||
*/
|
||||
in_onboarding: boolean;
|
||||
/**
|
||||
* Type of prompt
|
||||
*/
|
||||
type: GuildOnboardingPromptType;
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#guild-onboarding-object-prompt-option-structure
|
||||
*/
|
||||
export interface APIGuildOnboardingPromptOption {
|
||||
/**
|
||||
* Id of the prompt option
|
||||
*/
|
||||
id: Snowflake;
|
||||
/**
|
||||
* Ids for channels a member is added to when the option is selected
|
||||
*/
|
||||
channel_ids: Snowflake[];
|
||||
/**
|
||||
* Ids for roles assigned to a member when the option is selected
|
||||
*/
|
||||
role_ids: Snowflake[];
|
||||
/**
|
||||
* Emoji of the option
|
||||
*/
|
||||
emoji: APIPartialEmoji;
|
||||
/**
|
||||
* Title of the option
|
||||
*/
|
||||
title: string;
|
||||
/**
|
||||
* Description of the option
|
||||
*/
|
||||
description: string | null;
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#guild-onboarding-object-prompt-types
|
||||
*/
|
||||
export enum GuildOnboardingPromptType {
|
||||
MultipleChoice,
|
||||
Dropdown,
|
||||
}
|
||||
|
||||
@@ -9,6 +9,7 @@ import type {
|
||||
APIGuildIntegration,
|
||||
APIGuildMember,
|
||||
APIGuildMembershipScreening,
|
||||
APIGuildOnboarding,
|
||||
APIGuildPreview,
|
||||
APIGuildWelcomeScreen,
|
||||
APIGuildWidget,
|
||||
@@ -916,3 +917,8 @@ export type RESTPatchAPIGuildWelcomeScreenJSONBody = Nullable<StrictPartial<APIG
|
||||
* https://discord.com/developers/docs/resources/guild#modify-guild-welcome-screen
|
||||
*/
|
||||
export type RESTPatchAPIGuildWelcomeScreenResult = APIGuildWelcomeScreen;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#get-guild-onboarding
|
||||
*/
|
||||
export type RESTGetAPIGuildOnboardingResult = APIGuildOnboarding;
|
||||
|
||||
@@ -879,6 +879,14 @@ export const Routes = {
|
||||
guildScheduledEventUsers(guildId: Snowflake, guildScheduledEventId: Snowflake) {
|
||||
return `/guilds/${guildId}/scheduled-events/${guildScheduledEventId}/users` as const;
|
||||
},
|
||||
|
||||
/**
|
||||
* Route for:
|
||||
* - GET `/guilds/${guild.id}/onboarding`
|
||||
*/
|
||||
guildOnboarding(guildId: Snowflake) {
|
||||
return `/guilds/${guildId}/onboarding` as const;
|
||||
},
|
||||
};
|
||||
|
||||
export const StickerPackApplicationId = '710982414301790216';
|
||||
|
||||
@@ -7,6 +7,7 @@ import type {
|
||||
APIGuildIntegration,
|
||||
APIGuildMember,
|
||||
APIGuildMembershipScreening,
|
||||
APIGuildOnboarding,
|
||||
APIGuildPreview,
|
||||
APIGuildWelcomeScreen,
|
||||
APIGuildWidget,
|
||||
@@ -922,3 +923,8 @@ export type RESTPatchAPIGuildWelcomeScreenJSONBody = Nullable<StrictPartial<APIG
|
||||
* https://discord.com/developers/docs/resources/guild#modify-guild-welcome-screen
|
||||
*/
|
||||
export type RESTPatchAPIGuildWelcomeScreenResult = APIGuildWelcomeScreen;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#get-guild-onboarding
|
||||
*/
|
||||
export type RESTGetAPIGuildOnboardingResult = APIGuildOnboarding;
|
||||
|
||||
@@ -888,6 +888,14 @@ export const Routes = {
|
||||
guildScheduledEventUsers(guildId: Snowflake, guildScheduledEventId: Snowflake) {
|
||||
return `/guilds/${guildId}/scheduled-events/${guildScheduledEventId}/users` as const;
|
||||
},
|
||||
|
||||
/**
|
||||
* Route for:
|
||||
* - GET `/guilds/${guild.id}/onboarding`
|
||||
*/
|
||||
guildOnboarding(guildId: Snowflake) {
|
||||
return `/guilds/${guildId}/onboarding` as const;
|
||||
},
|
||||
};
|
||||
|
||||
export const StickerPackApplicationId = '710982414301790216';
|
||||
|
||||
Reference in New Issue
Block a user