grom/application

Types

pub type Application {
  Application(
    id: String,
    name: String,
    icon_hash: option.Option(String),
    description: String,
    rpc_origins: option.Option(List(String)),
    is_bot_public: Bool,
    does_bot_require_code_grant: Bool,
    bot: option.Option(user.User),
    terms_of_service_url: option.Option(String),
    privacy_policy_url: option.Option(String),
    owner: option.Option(user.User),
    team: option.Option(team.Team),
    guild_id: option.Option(String),
    guild: option.Option(guild.Guild),
    primary_sku_id: option.Option(String),
    slug: option.Option(String),
    cover_image_hash: option.Option(String),
    flags: option.Option(List(Flag)),
    approximate_guild_count: option.Option(Int),
    approximate_user_install_count: option.Option(Int),
    redirect_uris: option.Option(List(String)),
    interaction_endpoint_url: option.Option(String),
    role_connections_verification_url: option.Option(String),
    event_webhooks_url: option.Option(String),
    event_webhooks_status: option.Option(EventWebhookStatus),
    event_webhooks_types: option.Option(List(webhook_event.Type)),
    tags: option.Option(List(String)),
    install_params: option.Option(InstallParams),
    installation_context_config: option.Option(
      dict.Dict(InstallationContext, InstallationContextConfig),
    ),
    custom_install_url: option.Option(String),
  )
}

Constructors

pub type EventWebhookStatus {
  Disabled
  Enabled
  DisabledByDiscord
}

Constructors

  • Disabled
  • Enabled
  • DisabledByDiscord
pub type Flag {
  ApplicationAutoModerationRuleCreateBadge
  GatewayPresence
  GatewayPresenceLimited
  GatewayGuildMembers
  GatewayGuildMembersLimited
  VerificationPendingGuildLimit
  Embedded
  GatewayMessageContent
  GatewayMessageContentLimited
  ApplicationCommandBadge
}

Constructors

  • ApplicationAutoModerationRuleCreateBadge
  • GatewayPresence
  • GatewayPresenceLimited
  • GatewayGuildMembers
  • GatewayGuildMembersLimited
  • VerificationPendingGuildLimit
  • Embedded
  • GatewayMessageContent
  • GatewayMessageContentLimited
  • ApplicationCommandBadge
pub type GetEntitlementsQuery {
  UserId(String)
  SkuIds(set.Set(String))
  BeforeId(String)
  AfterId(String)
  Limit(Int)
  GuildId(String)
  ExcludeEnded(Bool)
  ExcludeDeleted(Bool)
}

Constructors

  • UserId(String)
  • SkuIds(set.Set(String))
  • BeforeId(String)
  • AfterId(String)
  • Limit(Int)
  • GuildId(String)
  • ExcludeEnded(Bool)
  • ExcludeDeleted(Bool)

Unlike user or guild, all application images have the same possible formats.

pub type ImageFormat {
  PngImage
  JpegImage
  WebpImage
}

Constructors

  • PngImage
  • JpegImage
  • WebpImage
pub type InstallParams {
  InstallParams(
    scopes: List(String),
    permissions: List(permission.Permission),
  )
}

Constructors

pub type InstallationContext {
  GuildInstall
  UserInstall
}

Constructors

  • GuildInstall
  • UserInstall
pub type InstallationContextConfig {
  InstallationContextConfig(
    oauth2_install_params: option.Option(InstallParams),
  )
}

Constructors

Values

pub fn cover_image_request(
  id id: String,
  hash cover_image: String,
  format format: ImageFormat,
) -> request.Request(String)
pub fn create_emoji(
  client: grom.Client,
  for application_id: String,
  named name: String,
  bytes image: image.Data,
) -> Result(emoji.Emoji, grom.Error)
pub fn delete_emoji(
  client: grom.Client,
  from application_id: String,
  id emoji_id: String,
) -> Result(Nil, grom.Error)
pub fn get_emoji(
  client: grom.Client,
  for application_id: String,
  id emoji_id: String,
) -> Result(emoji.Emoji, grom.Error)
pub fn get_emojis(
  client: grom.Client,
  for application_id: String,
) -> Result(List(emoji.Emoji), grom.Error)
pub fn get_entitlements(
  client: grom.Client,
  for application_id: String,
  with query: set.Set(GetEntitlementsQuery),
) -> Result(List(entitlement.Entitlement), grom.Error)
pub fn get_skus(
  client: grom.Client,
  for application_id: String,
) -> Result(List(sku.Sku), grom.Error)
pub fn icon_request(
  id id: String,
  hash icon: String,
  format format: ImageFormat,
) -> request.Request(String)
pub fn rename_emoji(
  client: grom.Client,
  for application_id: String,
  id emoji_id: String,
  to name: String,
) -> Result(emoji.Emoji, grom.Error)
Search Document