slackline/manifest
This module is generated by gleam run -m slackline_codegen/generate. Do not edit it by hand.
App manifests: the json configuration sent to apps.manifest.create
and apps.manifest.update, and returned by apps.manifest.export.
See https://docs.slack.dev/reference/app-manifest. Use new(name:)
for a minimal manifest and fill in the rest with record updates.
Types
features.agent_view.
pub type AgentView {
AgentView(
agent_description: String,
actions: option.Option(List(ViewAction)),
suggested_prompts: option.Option(List(SuggestedPrompt)),
)
}
Constructors
-
AgentView( agent_description: String, actions: option.Option(List(ViewAction)), suggested_prompts: option.Option(List(SuggestedPrompt)), )Arguments
- agent_description
-
A description of the agent. Maximum length is 300 characters.
- actions
-
Actions available in the agent container.
- suggested_prompts
-
Hard-coded prompts for the agent container.
app_directory: Slack Marketplace listing information.
pub type AppDirectory {
AppDirectory(
app_directory_categories: option.Option(List(String)),
use_direct_install: option.Option(Bool),
direct_install_url: option.Option(String),
installation_landing_page: String,
privacy_policy_url: String,
support_url: String,
support_email: String,
supported_languages: List(String),
pricing: String,
)
}
Constructors
-
AppDirectory( app_directory_categories: option.Option(List(String)), use_direct_install: option.Option(Bool), direct_install_url: option.Option(String), installation_landing_page: String, privacy_policy_url: String, support_url: String, support_email: String, supported_languages: List(String), pricing: String, )Arguments
- app_directory_categories
-
Marketplace categories. At most 3, each up to 255 characters.
- use_direct_install
-
Whether the app should use direct install.
- direct_install_url
-
The URL of the install page. Up to 255 characters.
- installation_landing_page
-
The URL of the installation landing page. Up to 255 characters.
- privacy_policy_url
-
A link to the app’s privacy policy. Up to 500 characters.
- support_url
-
A link to the app’s support page. Up to 350 characters.
- support_email
-
An email address to contact the app’s support. Up to 100 characters.
- supported_languages
-
The languages supported by the app.
- pricing
-
Pricing information. Up to 30 characters.
features.app_home.
pub type AppHome {
AppHome(
home_tab_enabled: option.Option(Bool),
messages_tab_enabled: option.Option(Bool),
messages_tab_read_only_enabled: option.Option(Bool),
)
}
Constructors
-
AppHome( home_tab_enabled: option.Option(Bool), messages_tab_enabled: option.Option(Bool), messages_tab_read_only_enabled: option.Option(Bool), )Arguments
- home_tab_enabled
-
Whether the Home tab is enabled.
- messages_tab_enabled
-
Whether the Messages tab is enabled.
- messages_tab_read_only_enabled
-
Whether users can only read (not send) messages in the Messages tab.
features.assistant_view.
pub type AssistantView {
AssistantView(
assistant_description: String,
actions: option.Option(List(ViewAction)),
suggested_prompts: option.Option(List(SuggestedPrompt)),
)
}
Constructors
-
AssistantView( assistant_description: String, actions: option.Option(List(ViewAction)), suggested_prompts: option.Option(List(SuggestedPrompt)), )Arguments
- assistant_description
-
A description of the app assistant.
- actions
-
Actions available in the assistant container.
- suggested_prompts
-
Hard-coded prompts for the assistant container.
features.bot_user.
pub type BotUser {
BotUser(
display_name: String,
always_online: option.Option(Bool),
)
}
Constructors
-
BotUser(display_name: String, always_online: option.Option(Bool))Arguments
- display_name
-
The bot’s display name. Max 80 characters of
a-z,0-9,-,_and.. - always_online
-
Whether the bot user always appears online.
features.code_channels.
pub type CodeChannels {
CodeChannels(
enabled: option.Option(Bool),
slash_command_url: option.Option(String),
suppress_mention_ephemeral: option.Option(Bool),
)
}
Constructors
-
CodeChannels( enabled: option.Option(Bool), slash_command_url: option.Option(String), suppress_mention_ephemeral: option.Option(Bool), )Arguments
- enabled
-
Whether code channels are enabled.
- slash_command_url
-
Where Slack delivers runtime-registered slash commands.
- suppress_mention_ephemeral
-
Skip the ephemeral prompt when users mention the app. Defaults to
true.
compliance: GovSlack certifications.
pub type Compliance {
Compliance(
fedramp_authorization: option.Option(String),
dod_srg_ilx: option.Option(String),
itar_compliant: option.Option(String),
)
}
Constructors
-
Compliance( fedramp_authorization: option.Option(String), dod_srg_ilx: option.Option(String), itar_compliant: option.Option(String), )
A custom type in types.
pub type CustomType {
CustomType(
base_type: String,
title: option.Option(String),
description: option.Option(String),
is_required: option.Option(Bool),
is_hidden: option.Option(Bool),
hint: option.Option(String),
properties: option.Option(value.Value),
required: option.Option(List(String)),
)
}
Constructors
-
CustomType( base_type: String, title: option.Option(String), description: option.Option(String), is_required: option.Option(Bool), is_hidden: option.Option(Bool), hint: option.Option(String), properties: option.Option(value.Value), required: option.Option(List(String)), )Arguments
- properties
-
For
objecttypes: property schemas. - required
-
For
objecttypes: required property names.
A datastore in datastores.
pub type Datastore {
Datastore(
primary_key: String,
attributes: dict.Dict(String, DatastoreAttribute),
time_to_live_attribute: option.Option(String),
)
}
Constructors
-
Datastore( primary_key: String, attributes: dict.Dict(String, DatastoreAttribute), time_to_live_attribute: option.Option(String), )Arguments
- primary_key
-
The attribute used as the primary key.
- attributes
-
The datastore’s attributes, keyed by name.
- time_to_live_attribute
-
The attribute holding the time-to-live of an item.
A datastore attribute.
pub type DatastoreAttribute {
DatastoreAttribute(
attribute_type: String,
items: option.Option(value.Value),
properties: option.Option(value.Value),
)
}
Constructors
-
DatastoreAttribute( attribute_type: String, items: option.Option(value.Value), properties: option.Option(value.Value), )Arguments
- attribute_type
-
The object type of the attribute.
- items
-
For arrays: a
typeandproperties. - properties
-
For objects: the properties.
display_information.
pub type DisplayInformation {
DisplayInformation(
name: String,
description: option.Option(String),
long_description: option.Option(String),
background_color: option.Option(String),
)
}
Constructors
-
DisplayInformation( name: String, description: option.Option(String), long_description: option.Option(String), background_color: option.Option(String), )Arguments
- name
-
The name of the app. Maximum length is 35 characters.
- description
-
A short description of the app. Maximum length is 140 characters.
- long_description
-
A longer description of the app, 175 to 4000 characters.
- background_color
-
A hex color value (including
#), 3 or 6 digits.
An enum choice in an event schema.
pub type EventChoice {
EventChoice(
value: value.Value,
title: String,
description: option.Option(String),
is_hidden: option.Option(Bool),
hint: option.Option(String),
)
}
Constructors
-
EventChoice( value: value.Value, title: String, description: option.Option(String), is_hidden: option.Option(Bool), hint: option.Option(String), )Arguments
- value
-
A string, number or object.
events.<event_type>.object.
pub type EventObjectSchema {
EventObjectSchema(
object_type: value.Value,
title: option.Option(String),
description: option.Option(String),
default: option.Option(value.Value),
examples: option.Option(List(value.Value)),
required: option.Option(List(String)),
additional_properties: option.Option(Bool),
nullable: option.Option(Bool),
properties: option.Option(dict.Dict(String, value.Value)),
is_required: option.Option(Bool),
is_hidden: option.Option(Bool),
hint: option.Option(String),
choices: option.Option(List(EventChoice)),
render_condition: option.Option(RenderCondition),
)
}
Constructors
-
EventObjectSchema( object_type: value.Value, title: option.Option(String), description: option.Option(String), default: option.Option(value.Value), examples: option.Option(List(value.Value)), required: option.Option(List(String)), additional_properties: option.Option(Bool), nullable: option.Option(Bool), properties: option.Option(dict.Dict(String, value.Value)), is_required: option.Option(Bool), is_hidden: option.Option(Bool), hint: option.Option(String), choices: option.Option(List(EventChoice)), render_condition: option.Option(RenderCondition), )Arguments
- object_type
-
The reference says “Object containing three properties: string type, object enum, and string title”, so this is kept as json.
- properties
-
Property schemas, max 50.
events.<event_type>.reference.
pub type EventReferenceSchema {
EventReferenceSchema(
reference_type: String,
title: option.Option(String),
description: option.Option(String),
default: option.Option(value.Value),
examples: option.Option(List(value.Value)),
nullable: option.Option(Bool),
is_required: option.Option(Bool),
is_hidden: option.Option(Bool),
hint: option.Option(String),
)
}
Constructors
-
EventReferenceSchema( reference_type: String, title: option.Option(String), description: option.Option(String), default: option.Option(value.Value), examples: option.Option(List(value.Value)), nullable: option.Option(Bool), is_required: option.Option(Bool), is_hidden: option.Option(Bool), hint: option.Option(String), )Arguments
- reference_type
-
A user-defined type reference,
^(?!slack)(\w*#)/(\w+)/(\w+)$.
settings.event_subscriptions.
pub type EventSubscriptions {
EventSubscriptions(
request_url: option.Option(String),
bot_events: option.Option(List(String)),
user_events: option.Option(List(String)),
metadata_subscriptions: option.Option(
List(MetadataSubscription),
),
)
}
Constructors
-
EventSubscriptions( request_url: option.Option(String), bot_events: option.Option(List(String)), user_events: option.Option(List(String)), metadata_subscriptions: option.Option( List(MetadataSubscription), ), )Arguments
- request_url
-
The Events API request URL.
- bot_events
-
Event types the app subscribes to. Max 100.
- user_events
-
Event types the app subscribes to on behalf of authorized users. Max 100.
- metadata_subscriptions
-
Message metadata subscriptions.
External auth provider options. SLACK_PROVIDED only uses client_id and
scope.
pub type ExternalAuthOptions {
ExternalAuthOptions(
client_id: String,
scope: List(String),
provider_name: option.Option(String),
authorization_url: option.Option(String),
token_url: option.Option(String),
authorization_url_extras: option.Option(
dict.Dict(String, String),
),
identity_config: option.Option(IdentityConfig),
use_pkce: option.Option(Bool),
token_url_config: option.Option(TokenUrlConfig),
)
}
Constructors
-
ExternalAuthOptions( client_id: String, scope: List(String), provider_name: option.Option(String), authorization_url: option.Option(String), token_url: option.Option(String), authorization_url_extras: option.Option( dict.Dict(String, String), ), identity_config: option.Option(IdentityConfig), use_pkce: option.Option(Bool), token_url_config: option.Option(TokenUrlConfig), )Arguments
- client_id
-
Max 1024 characters.
- scope
-
Scopes to request.
- provider_name
-
Required for
CUSTOM. Max 255 characters. - authorization_url
-
Required for
CUSTOM. Anhttps://URL. - token_url
-
Required for
CUSTOM. Anhttps://URL. - authorization_url_extras
-
Extra query parameters for the authorization URL.
- identity_config
-
Required for
CUSTOM. - use_pkce
-
Whether this provider uses PKCE.
One external OAuth provider.
pub type ExternalAuthProvider {
ExternalAuthProvider(
provider_type: ProviderType,
options: ExternalAuthOptions,
)
}
Constructors
-
ExternalAuthProvider( provider_type: ProviderType, options: ExternalAuthOptions, )Arguments
- provider_type
-
CUSTOMorSLACK_PROVIDED.
features.
pub type Features {
Features(
app_home: option.Option(AppHome),
agent_view: option.Option(AgentView),
assistant_view: option.Option(AssistantView),
bot_user: option.Option(BotUser),
code_channels: option.Option(CodeChannels),
rich_previews: option.Option(RichPreviews),
search: option.Option(SearchSettings),
shortcuts: option.Option(List(ManifestShortcut)),
slash_commands: option.Option(List(ManifestSlashCommand)),
unfurl_domains: option.Option(List(String)),
workflow_steps: option.Option(List(LegacyWorkflowStep)),
)
}
Constructors
-
Features( app_home: option.Option(AppHome), agent_view: option.Option(AgentView), assistant_view: option.Option(AssistantView), bot_user: option.Option(BotUser), code_channels: option.Option(CodeChannels), rich_previews: option.Option(RichPreviews), search: option.Option(SearchSettings), shortcuts: option.Option(List(ManifestShortcut)), slash_commands: option.Option(List(ManifestSlashCommand)), unfurl_domains: option.Option(List(String)), workflow_steps: option.Option(List(LegacyWorkflowStep)), )Arguments
- app_home
-
App Home configuration.
- agent_view
-
The Agent messaging experience. New apps can only use this one.
- assistant_view
-
The older Assistant messaging experience. Slack plans to deprecate it.
- bot_user
-
Bot user configuration.
- code_channels
-
Code channels configuration.
- rich_previews
-
Rich previews (Work Objects) configuration.
- search
-
Enterprise search configuration.
- shortcuts
-
Shortcuts. Max 10.
- slash_commands
-
Slash commands. Max 50.
- unfurl_domains
-
Unfurl domains. Max 5.
- workflow_steps
-
Legacy, deprecated: workflow steps from apps. Max 10.
settings.function_runtime.
pub type FunctionRuntime {
RemoteRuntime
SlackRuntime
UnknownFunctionRuntime(String)
}
Constructors
-
RemoteRuntimeA self-hosted app.
-
SlackRuntimeAn app built with the Deno Slack SDK, hosted by Slack.
-
UnknownFunctionRuntime(String)A value that this version of slackline does not know.
How to identify the account behind an external token.
pub type IdentityConfig {
IdentityConfig(
url: String,
account_identifier: String,
headers: option.Option(dict.Dict(String, String)),
body: option.Option(dict.Dict(String, value.Value)),
http_method_type: option.Option(String),
)
}
Constructors
-
IdentityConfig( url: String, account_identifier: String, headers: option.Option(dict.Dict(String, String)), body: option.Option(dict.Dict(String, value.Value)), http_method_type: option.Option(String), )Arguments
- url
-
An
https://URL, 5 to 255 characters. - account_identifier
-
The account identifier, 1 to 255 characters.
- http_method_type
-
GETorPOST.
settings.incoming_webhooks.
pub type IncomingWebhooks {
IncomingWebhooks(incoming_webhooks_enabled: Bool)
}
Constructors
-
IncomingWebhooks(incoming_webhooks_enabled: Bool)
settings.interactivity.
pub type InteractivitySettings {
InteractivitySettings(
is_enabled: Bool,
request_url: option.Option(String),
message_menu_options_url: option.Option(String),
)
}
Constructors
-
InteractivitySettings( is_enabled: Bool, request_url: option.Option(String), message_menu_options_url: option.Option(String), )Arguments
- is_enabled
-
Whether interactivity features are enabled.
- request_url
-
The interactive Request URL.
- message_menu_options_url
-
The interactive Options Load URL.
Legacy, deprecated: a workflow step from apps.
pub type LegacyWorkflowStep {
LegacyWorkflowStep(name: String, callback_id: String)
}
Constructors
-
LegacyWorkflowStep(name: String, callback_id: String)Arguments
- name
-
Max 50 characters.
- callback_id
-
Max 50 characters.
An app manifest.
pub type Manifest {
Manifest(
metadata: option.Option(ManifestMetadata),
display_information: DisplayInformation,
app_directory: option.Option(AppDirectory),
settings: option.Option(Settings),
features: option.Option(Features),
oauth_config: option.Option(OauthConfig),
functions: option.Option(dict.Dict(String, ManifestFunction)),
workflows: option.Option(dict.Dict(String, ManifestWorkflow)),
datastores: option.Option(dict.Dict(String, Datastore)),
outgoing_domains: option.Option(List(String)),
types: option.Option(dict.Dict(String, CustomType)),
events: option.Option(dict.Dict(String, MetadataEventSchema)),
external_auth_providers: option.Option(value.Value),
compliance: option.Option(Compliance),
mcp_servers: option.Option(dict.Dict(String, McpServer)),
)
}
Constructors
-
Manifest( metadata: option.Option(ManifestMetadata), display_information: DisplayInformation, app_directory: option.Option(AppDirectory), settings: option.Option(Settings), features: option.Option(Features), oauth_config: option.Option(OauthConfig), functions: option.Option(dict.Dict(String, ManifestFunction)), workflows: option.Option(dict.Dict(String, ManifestWorkflow)), datastores: option.Option(dict.Dict(String, Datastore)), outgoing_domains: option.Option(List(String)), types: option.Option(dict.Dict(String, CustomType)), events: option.Option(dict.Dict(String, MetadataEventSchema)), external_auth_providers: option.Option(value.Value), compliance: option.Option(Compliance), mcp_servers: option.Option(dict.Dict(String, McpServer)), )Arguments
- metadata
-
Settings that describe the manifest itself.
- display_information
-
Settings that describe parts of the app’s appearance within Slack.
- app_directory
-
Information listed in the Slack Marketplace.
- settings
-
The Settings section of the app’s configuration pages.
- features
-
The Features section of the app’s configuration pages.
- oauth_config
-
OAuth configuration.
- functions
-
Functions (workflow steps) keyed by
callback_id. - workflows
-
Workflows keyed by
callback_id. - datastores
-
Datastores keyed by name.
- outgoing_domains
-
Accepted egress domains for an app with
function_runtime=slack. Max 10. - types
-
Custom types keyed by name. Max 50.
- events
-
Message metadata events the app can send, keyed by
event_type. Max 50. - external_auth_providers
-
OAuth providers used by the app. The reference lists the fields of one provider (see
ExternalAuthProvider) without saying how providers are keyed, so the whole group is kept as json. - compliance
-
Compliance certifications for GovSlack.
- mcp_servers
-
MCP servers used by the app, keyed by server key. Max 20.
A function in functions.
pub type ManifestFunction {
ManifestFunction(
title: String,
description: String,
input_parameters: ParameterSchema,
output_parameters: ParameterSchema,
)
}
Constructors
-
ManifestFunction( title: String, description: String, input_parameters: ParameterSchema, output_parameters: ParameterSchema, )Arguments
- title
-
Identifies the step. Max 255 characters.
- description
-
A succinct summary of what the step does.
- input_parameters
-
The step’s input parameters.
- output_parameters
-
The step’s output parameters.
_metadata: the manifest schema version to target.
pub type ManifestMetadata {
ManifestMetadata(
major_version: option.Option(Int),
minor_version: option.Option(Int),
)
}
Constructors
-
ManifestMetadata( major_version: option.Option(Int), minor_version: option.Option(Int), )Arguments
- major_version
-
The major version of the manifest schema.
- minor_version
-
The minor version of the manifest schema.
A shortcut in features.shortcuts.
pub type ManifestShortcut {
ManifestShortcut(
name: String,
callback_id: String,
description: String,
shortcut_type: ShortcutType,
)
}
Constructors
-
ManifestShortcut( name: String, callback_id: String, description: String, shortcut_type: ShortcutType, )Arguments
- name
-
The name of the shortcut.
- callback_id
-
The
callback_idof the shortcut. Max 255 characters. - description
-
A short description. Max 150 characters.
- shortcut_type
-
messageorglobal.
A slash command in features.slash_commands.
pub type ManifestSlashCommand {
ManifestSlashCommand(
command: String,
description: String,
should_escape: option.Option(Bool),
url: option.Option(String),
usage_hint: option.Option(String),
)
}
Constructors
-
ManifestSlashCommand( command: String, description: String, should_escape: option.Option(Bool), url: option.Option(String), usage_hint: option.Option(String), )Arguments
- command
-
The command, including the leading
/. Max 32 characters. - description
-
A description displayed to users. Max 2000 characters.
- should_escape
-
Whether channels, users and links typed with the command are escaped. Defaults to
false. - url
-
The command’s Request URL.
- usage_hint
-
A usage hint. Max 1000 characters.
A workflow in workflows.
pub type ManifestWorkflow {
ManifestWorkflow(
title: String,
description: String,
input_parameters: option.Option(ParameterSchema),
output_parameters: option.Option(ParameterSchema),
steps: List(WorkflowStep),
suggested_triggers: option.Option(SuggestedTriggers),
)
}
Constructors
-
ManifestWorkflow( title: String, description: String, input_parameters: option.Option(ParameterSchema), output_parameters: option.Option(ParameterSchema), steps: List(WorkflowStep), suggested_triggers: option.Option(SuggestedTriggers), )Arguments
- title
-
The workflow title.
- description
-
The workflow description.
- input_parameters
-
Workflow inputs.
- output_parameters
-
Workflow outputs.
- steps
-
The steps of the workflow.
- suggested_triggers
-
Suggested triggers.
How the app authenticates to an MCP server.
pub type McpAuthType {
DynamicClientRegistration
NoAuth
ManualAuth
SlackIdentityAuth
UnknownMcpAuthType(String)
}
Constructors
-
DynamicClientRegistrationdynamic_client_registration -
NoAuthno_auth -
ManualAuthmanual_auth -
SlackIdentityAuthslack_identity_auth -
UnknownMcpAuthType(String)A value that this version of slackline does not know.
An MCP server in mcp_servers.
pub type McpServer {
McpServer(
url: String,
auth_provider_key: option.Option(String),
auth_type: option.Option(McpAuthType),
headers: option.Option(dict.Dict(String, String)),
icon_emoji: option.Option(String),
)
}
Constructors
-
McpServer( url: String, auth_provider_key: option.Option(String), auth_type: option.Option(McpAuthType), headers: option.Option(dict.Dict(String, String)), icon_emoji: option.Option(String), )Arguments
- url
-
The server URL. Max 500 characters.
- auth_provider_key
-
The key of an external auth provider to authenticate with.
- headers
-
HTTP headers to send to the server.
- icon_emoji
-
An emoji such as
:robot_face:.
A message metadata event declaration: either an object schema or a
reference.
pub type MetadataEventSchema {
MetadataEventSchema(
object: option.Option(EventObjectSchema),
reference: option.Option(EventReferenceSchema),
)
}
Constructors
-
MetadataEventSchema( object: option.Option(EventObjectSchema), reference: option.Option(EventReferenceSchema), )
A message metadata subscription.
pub type MetadataSubscription {
MetadataSubscription(app_id: String, event_type: String)
}
Constructors
-
MetadataSubscription(app_id: String, event_type: String)Arguments
- app_id
-
The app whose metadata to receive, or
*for every app. - event_type
-
The metadata
event_type.
oauth_config.
pub type OauthConfig {
OauthConfig(
is_enterprise_managed_auth_supported: option.Option(Bool),
pkce_enabled: option.Option(Bool),
redirect_urls: option.Option(List(String)),
scopes: option.Option(OauthScopes),
token_management_enabled: option.Option(Bool),
)
}
Constructors
-
OauthConfig( is_enterprise_managed_auth_supported: option.Option(Bool), pkce_enabled: option.Option(Bool), redirect_urls: option.Option(List(String)), scopes: option.Option(OauthScopes), token_management_enabled: option.Option(Bool), )Arguments
- is_enterprise_managed_auth_supported
-
Whether the app supports enterprise-managed authorization.
- pkce_enabled
-
Whether PKCE is enabled for the OAuth flow.
- redirect_urls
-
OAuth redirect URLs. Max 1000.
- scopes
-
Permission scopes.
- token_management_enabled
-
Whether token management is enabled.
oauth_config.scopes.
pub type OauthScopes {
OauthScopes(
bot: option.Option(List(String)),
bot_optional: option.Option(List(String)),
user: option.Option(List(String)),
user_optional: option.Option(List(String)),
)
}
Constructors
-
OauthScopes( bot: option.Option(List(String)), bot_optional: option.Option(List(String)), user: option.Option(List(String)), user_optional: option.Option(List(String)), )Arguments
- bot
-
Bot scopes requested on install. Max 255.
- bot_optional
-
Optional bot scopes.
botmust also list them. - user
-
User scopes requested on install. Max 255.
- user_optional
-
Optional user scopes.
usermust also list them.
One function, workflow or type parameter.
pub type Parameter {
Parameter(
param_type: String,
title: option.Option(String),
description: option.Option(String),
is_required: option.Option(Bool),
hint: option.Option(String),
name: option.Option(String),
is_hidden: option.Option(Bool),
default: option.Option(value.Value),
examples: option.Option(List(value.Value)),
nullable: option.Option(Bool),
items: option.Option(value.Value),
properties: option.Option(value.Value),
required: option.Option(List(String)),
choices: option.Option(List(value.Value)),
)
}
Constructors
-
Parameter( param_type: String, title: option.Option(String), description: option.Option(String), is_required: option.Option(Bool), hint: option.Option(String), name: option.Option(String), is_hidden: option.Option(Bool), default: option.Option(value.Value), examples: option.Option(List(value.Value)), nullable: option.Option(Bool), items: option.Option(value.Value), properties: option.Option(value.Value), required: option.Option(List(String)), choices: option.Option(List(value.Value)), )Arguments
- param_type
-
A Slack type (
slack#/types/...), a custom type, or a primitive likestring. - is_required
-
v1 only: whether the parameter is required.
- items
-
Item schema for
arrayparameters. - properties
-
Property schemas for
objectparameters. - required
-
Required property names for
objectparameters. - choices
-
Allowed values.
Manifest v2 parameters.
pub type ParameterProperties {
ParameterProperties(
properties: dict.Dict(String, Parameter),
required: option.Option(List(String)),
)
}
Constructors
-
ParameterProperties( properties: dict.Dict(String, Parameter), required: option.Option(List(String)), )Arguments
- properties
-
Parameters keyed by name.
- required
-
Names of required parameters.
Function or workflow parameters. Manifest v2 uses {properties, required}.
v1 uses a map of parameters, each with is_required.
pub type ParameterSchema {
ParametersV2(ParameterProperties)
ParametersV1(dict.Dict(String, Parameter))
}
Constructors
-
ParametersV2(ParameterProperties) -
The kind of external auth provider.
pub type ProviderType {
CustomProvider
SlackProvidedProvider
UnknownProviderType(String)
}
Constructors
-
CustomProviderCUSTOM -
SlackProvidedProviderSLACK_PROVIDED -
UnknownProviderType(String)A value that this version of slackline does not know.
When a field should be rendered.
pub type RenderCondition {
RenderCondition(
operator: String,
is_required: option.Option(Bool),
conditions: List(value.Value),
)
}
Constructors
-
RenderCondition( operator: String, is_required: option.Option(Bool), conditions: List(value.Value), )Arguments
- operator
-
A logical operator acting on the conditions.
features.rich_previews.slug.
pub type RichPreviewSlug {
RichPreviewSlug(hide_display_id: option.Option(Bool))
}
Constructors
-
RichPreviewSlug(hide_display_id: option.Option(Bool))Arguments
- hide_display_id
-
Whether a task’s slug leaves out its display ID.
features.rich_previews.
pub type RichPreviews {
RichPreviews(
allow_same_origin: option.Option(Bool),
domain_allowlist: option.Option(List(String)),
entity_types: option.Option(List(String)),
is_active: option.Option(Bool),
slug: option.Option(RichPreviewSlug),
)
}
Constructors
-
RichPreviews( allow_same_origin: option.Option(Bool), domain_allowlist: option.Option(List(String)), entity_types: option.Option(List(String)), is_active: option.Option(Bool), slug: option.Option(RichPreviewSlug), )Arguments
- allow_same_origin
-
Whether Work Object embeds render with the allow-same-origin sandbox token.
- domain_allowlist
-
Domains allowed for Work Object embeds.
- entity_types
-
Entity types for rich previews.
- is_active
-
Whether rich previews are enabled.
- slug
-
Slug settings.
features.search.
pub type SearchSettings {
SearchSettings(
search_function_callback_id: String,
search_filters_function_callback_id: option.Option(String),
slackbot_metadata: option.Option(SlackbotMetadata),
)
}
Constructors
-
SearchSettings( search_function_callback_id: String, search_filters_function_callback_id: option.Option(String), slackbot_metadata: option.Option(SlackbotMetadata), )Arguments
- search_function_callback_id
-
The
callback_idof the function used to search for items. - search_filters_function_callback_id
-
The
callback_idof the function used to provide search filters. - slackbot_metadata
-
How AI interacts with the search connector.
settings.
pub type Settings {
Settings(
allowed_ip_address_ranges: option.Option(List(String)),
app_level_token_rotation_enabled: option.Option(Bool),
event_subscriptions: option.Option(EventSubscriptions),
incoming_webhooks: option.Option(IncomingWebhooks),
interactivity: option.Option(InteractivitySettings),
org_deploy_enabled: option.Option(Bool),
socket_mode_enabled: option.Option(Bool),
token_rotation_enabled: option.Option(Bool),
is_hosted: option.Option(Bool),
is_mcp_enabled: option.Option(Bool),
siws_links: option.Option(SiwsLinks),
function_runtime: option.Option(FunctionRuntime),
)
}
Constructors
-
Settings( allowed_ip_address_ranges: option.Option(List(String)), app_level_token_rotation_enabled: option.Option(Bool), event_subscriptions: option.Option(EventSubscriptions), incoming_webhooks: option.Option(IncomingWebhooks), interactivity: option.Option(InteractivitySettings), org_deploy_enabled: option.Option(Bool), socket_mode_enabled: option.Option(Bool), token_rotation_enabled: option.Option(Bool), is_hosted: option.Option(Bool), is_mcp_enabled: option.Option(Bool), siws_links: option.Option(SiwsLinks), function_runtime: option.Option(FunctionRuntime), )Arguments
- allowed_ip_address_ranges
-
IP addresses allowed to call the API with the app’s tokens. Max 10.
- app_level_token_rotation_enabled
-
Whether app-level token rotation is enabled.
- event_subscriptions
-
Events API configuration.
- incoming_webhooks
-
Incoming webhooks configuration.
- interactivity
-
Interactivity configuration.
- org_deploy_enabled
-
Whether organization-wide deployment is enabled. Must be
truewhen the manifest includes functions, workflows, datastores, types, outgoing domains or events. - socket_mode_enabled
-
Whether Socket Mode is enabled.
- token_rotation_enabled
-
Whether token rotation is enabled.
- is_hosted
-
Whether the app is hosted by Slack.
- is_mcp_enabled
-
Whether MCP is enabled for the app.
- siws_links
-
SIWS links configuration.
- function_runtime
-
The runtime of the app’s functions. Required when using
functions.
The kind of shortcut.
pub type ShortcutType {
MessageShortcut
GlobalShortcut
UnknownShortcutType(String)
}
Constructors
-
MessageShortcutmessage -
GlobalShortcutglobal -
UnknownShortcutType(String)A value that this version of slackline does not know.
settings.siws_links.
pub type SiwsLinks {
SiwsLinks(initiate_uri: option.Option(String))
}
Constructors
-
SiwsLinks(initiate_uri: option.Option(String))Arguments
- initiate_uri
-
An
https://URI.
features.search.slackbot_metadata.
pub type SlackbotMetadata {
SlackbotMetadata(
description: option.Option(String),
examples: option.Option(List(String)),
example_query: option.Option(String),
)
}
Constructors
-
SlackbotMetadata( description: option.Option(String), examples: option.Option(List(String)), example_query: option.Option(String), )Arguments
- examples
-
Up to 5 examples.
A suggested prompt in an agent or assistant container.
pub type SuggestedPrompt {
SuggestedPrompt(title: String, message: String)
}
Constructors
-
SuggestedPrompt(title: String, message: String)Arguments
- title
-
A short label shown for the prompt.
- message
-
The message sent when the user picks the prompt.
A suggested trigger for a workflow.
pub type SuggestedTrigger {
SuggestedTrigger(
name: String,
description: option.Option(String),
trigger_type: String,
inputs: option.Option(dict.Dict(String, value.Value)),
)
}
Constructors
-
SuggestedTrigger( name: String, description: option.Option(String), trigger_type: String, inputs: option.Option(dict.Dict(String, value.Value)), )Arguments
- inputs
-
Trigger inputs keyed by workflow input name, each a
{"value": ...}object.
workflows.suggested_triggers, as an object keyed by trigger name or as a
list.
pub type SuggestedTriggers {
TriggersByName(dict.Dict(String, SuggestedTrigger))
TriggerList(List(SuggestedTrigger))
}
Constructors
-
TriggersByName(dict.Dict(String, SuggestedTrigger)) -
TriggerList(List(SuggestedTrigger))
token_url_config.
pub type TokenUrlConfig {
TokenUrlConfig(use_basic_auth_scheme: option.Option(Bool))
}
Constructors
-
TokenUrlConfig(use_basic_auth_scheme: option.Option(Bool))
An action in an agent or assistant container.
pub type ViewAction {
ViewAction(name: String, description: String)
}
Constructors
-
ViewAction(name: String, description: String)
A step in a workflow.
pub type WorkflowStep {
WorkflowStep(
id: String,
function_id: String,
inputs: dict.Dict(String, value.Value),
step_type: option.Option(WorkflowStepType),
)
}
Constructors
-
WorkflowStep( id: String, function_id: String, inputs: dict.Dict(String, value.Value), step_type: option.Option(WorkflowStepType), )Arguments
- function_id
-
The function to run, for example
slack#/functions/send_message. - inputs
-
Inputs for the function, often with
{{...}}template expressions. - step_type
-
v2 manifests only:
function,switchorconditional.
The kind of workflow step.
pub type WorkflowStepType {
FunctionStep
SwitchStep
ConditionalStep
UnknownWorkflowStepType(String)
}
Constructors
-
FunctionStepfunction -
SwitchStepswitch -
ConditionalStepconditional -
UnknownWorkflowStepType(String)A value that this version of slackline does not know.
Values
pub fn agent_view_decoder() -> decode.Decoder(AgentView)
Decodes AgentView from json.
pub fn app_directory_decoder() -> decode.Decoder(AppDirectory)
Decodes AppDirectory from json.
pub fn app_directory_to_json(it: AppDirectory) -> json.Json
Encodes AppDirectory as json.
pub fn app_home_decoder() -> decode.Decoder(AppHome)
Decodes AppHome from json.
pub fn assistant_view_decoder() -> decode.Decoder(AssistantView)
Decodes AssistantView from json.
pub fn assistant_view_to_json(it: AssistantView) -> json.Json
Encodes AssistantView as json.
pub fn bot_scopes(scopes: List(String)) -> OauthConfig
An oauth_config that requests the given bot scopes.
pub fn bot_user(display_name: String) -> BotUser
A bot user entry for features.bot_user.
pub fn bot_user_decoder() -> decode.Decoder(BotUser)
Decodes BotUser from json.
pub fn code_channels_decoder() -> decode.Decoder(CodeChannels)
Decodes CodeChannels from json.
pub fn code_channels_to_json(it: CodeChannels) -> json.Json
Encodes CodeChannels as json.
pub fn compliance_decoder() -> decode.Decoder(Compliance)
Decodes Compliance from json.
pub fn compliance_to_json(it: Compliance) -> json.Json
Encodes Compliance as json.
pub fn custom_type_decoder() -> decode.Decoder(CustomType)
Decodes CustomType from json.
pub fn custom_type_to_json(it: CustomType) -> json.Json
Encodes CustomType as json.
pub fn datastore_attribute_decoder() -> decode.Decoder(
DatastoreAttribute,
)
Decodes DatastoreAttribute from json.
pub fn datastore_attribute_to_json(
it: DatastoreAttribute,
) -> json.Json
Encodes DatastoreAttribute as json.
pub fn datastore_decoder() -> decode.Decoder(Datastore)
Decodes Datastore from json.
pub fn display_information_decoder() -> decode.Decoder(
DisplayInformation,
)
Decodes DisplayInformation from json.
pub fn display_information_to_json(
it: DisplayInformation,
) -> json.Json
Encodes DisplayInformation as json.
pub fn event_choice_decoder() -> decode.Decoder(EventChoice)
Decodes EventChoice from json.
pub fn event_choice_to_json(it: EventChoice) -> json.Json
Encodes EventChoice as json.
pub fn event_object_schema_decoder() -> decode.Decoder(
EventObjectSchema,
)
Decodes EventObjectSchema from json.
pub fn event_object_schema_to_json(
it: EventObjectSchema,
) -> json.Json
Encodes EventObjectSchema as json.
pub fn event_reference_schema_decoder() -> decode.Decoder(
EventReferenceSchema,
)
Decodes EventReferenceSchema from json.
pub fn event_reference_schema_to_json(
it: EventReferenceSchema,
) -> json.Json
Encodes EventReferenceSchema as json.
pub fn event_subscriptions_decoder() -> decode.Decoder(
EventSubscriptions,
)
Decodes EventSubscriptions from json.
pub fn event_subscriptions_to_json(
it: EventSubscriptions,
) -> json.Json
Encodes EventSubscriptions as json.
pub fn external_auth_options_decoder() -> decode.Decoder(
ExternalAuthOptions,
)
Decodes ExternalAuthOptions from json.
pub fn external_auth_options_to_json(
it: ExternalAuthOptions,
) -> json.Json
Encodes ExternalAuthOptions as json.
pub fn external_auth_provider_decoder() -> decode.Decoder(
ExternalAuthProvider,
)
Decodes ExternalAuthProvider from json.
pub fn external_auth_provider_to_json(
it: ExternalAuthProvider,
) -> json.Json
Encodes ExternalAuthProvider as json.
pub fn features_decoder() -> decode.Decoder(Features)
Decodes Features from json.
pub fn function_runtime_decoder() -> decode.Decoder(
FunctionRuntime,
)
Decodes FunctionRuntime from a json string.
pub fn function_runtime_from_string(
string: String,
) -> FunctionRuntime
Parses FunctionRuntime from its json string.
pub fn function_runtime_to_json(it: FunctionRuntime) -> json.Json
Encodes FunctionRuntime as a json string.
pub fn function_runtime_to_string(it: FunctionRuntime) -> String
The json string of FunctionRuntime.
pub fn identity_config_decoder() -> decode.Decoder(IdentityConfig)
Decodes IdentityConfig from json.
pub fn identity_config_to_json(it: IdentityConfig) -> json.Json
Encodes IdentityConfig as json.
pub fn incoming_webhooks_decoder() -> decode.Decoder(
IncomingWebhooks,
)
Decodes IncomingWebhooks from json.
pub fn incoming_webhooks_to_json(
it: IncomingWebhooks,
) -> json.Json
Encodes IncomingWebhooks as json.
pub fn interactivity_settings_decoder() -> decode.Decoder(
InteractivitySettings,
)
Decodes InteractivitySettings from json.
pub fn interactivity_settings_to_json(
it: InteractivitySettings,
) -> json.Json
Encodes InteractivitySettings as json.
pub fn legacy_workflow_step_decoder() -> decode.Decoder(
LegacyWorkflowStep,
)
Decodes LegacyWorkflowStep from json.
pub fn legacy_workflow_step_to_json(
it: LegacyWorkflowStep,
) -> json.Json
Encodes LegacyWorkflowStep as json.
pub fn manifest_decoder() -> decode.Decoder(Manifest)
Decodes Manifest from json.
pub fn manifest_function_decoder() -> decode.Decoder(
ManifestFunction,
)
Decodes ManifestFunction from json.
pub fn manifest_function_to_json(
it: ManifestFunction,
) -> json.Json
Encodes ManifestFunction as json.
pub fn manifest_metadata_decoder() -> decode.Decoder(
ManifestMetadata,
)
Decodes ManifestMetadata from json.
pub fn manifest_metadata_to_json(
it: ManifestMetadata,
) -> json.Json
Encodes ManifestMetadata as json.
pub fn manifest_shortcut_decoder() -> decode.Decoder(
ManifestShortcut,
)
Decodes ManifestShortcut from json.
pub fn manifest_shortcut_to_json(
it: ManifestShortcut,
) -> json.Json
Encodes ManifestShortcut as json.
pub fn manifest_slash_command_decoder() -> decode.Decoder(
ManifestSlashCommand,
)
Decodes ManifestSlashCommand from json.
pub fn manifest_slash_command_to_json(
it: ManifestSlashCommand,
) -> json.Json
Encodes ManifestSlashCommand as json.
pub fn manifest_workflow_decoder() -> decode.Decoder(
ManifestWorkflow,
)
Decodes ManifestWorkflow from json.
pub fn manifest_workflow_to_json(
it: ManifestWorkflow,
) -> json.Json
Encodes ManifestWorkflow as json.
pub fn mcp_auth_type_decoder() -> decode.Decoder(McpAuthType)
Decodes McpAuthType from a json string.
pub fn mcp_auth_type_from_string(string: String) -> McpAuthType
Parses McpAuthType from its json string.
pub fn mcp_auth_type_to_json(it: McpAuthType) -> json.Json
Encodes McpAuthType as a json string.
pub fn mcp_auth_type_to_string(it: McpAuthType) -> String
The json string of McpAuthType.
pub fn mcp_server_decoder() -> decode.Decoder(McpServer)
Decodes McpServer from json.
pub fn metadata_event_schema_decoder() -> decode.Decoder(
MetadataEventSchema,
)
Decodes MetadataEventSchema from json.
pub fn metadata_event_schema_to_json(
it: MetadataEventSchema,
) -> json.Json
Encodes MetadataEventSchema as json.
pub fn metadata_subscription_decoder() -> decode.Decoder(
MetadataSubscription,
)
Decodes MetadataSubscription from json.
pub fn metadata_subscription_to_json(
it: MetadataSubscription,
) -> json.Json
Encodes MetadataSubscription as json.
pub fn oauth_config_decoder() -> decode.Decoder(OauthConfig)
Decodes OauthConfig from json.
pub fn oauth_config_to_json(it: OauthConfig) -> json.Json
Encodes OauthConfig as json.
pub fn oauth_scopes_decoder() -> decode.Decoder(OauthScopes)
Decodes OauthScopes from json.
pub fn oauth_scopes_to_json(it: OauthScopes) -> json.Json
Encodes OauthScopes as json.
pub fn parameter_decoder() -> decode.Decoder(Parameter)
Decodes Parameter from json.
pub fn parameter_properties_decoder() -> decode.Decoder(
ParameterProperties,
)
Decodes ParameterProperties from json.
pub fn parameter_properties_to_json(
it: ParameterProperties,
) -> json.Json
Encodes ParameterProperties as json.
pub fn parameter_schema_decoder() -> decode.Decoder(
ParameterSchema,
)
Decodes ParameterSchema from json. It tries each alternative in order.
pub fn parameter_schema_to_json(it: ParameterSchema) -> json.Json
Encodes ParameterSchema as json.
pub fn provider_type_decoder() -> decode.Decoder(ProviderType)
Decodes ProviderType from a json string.
pub fn provider_type_from_string(string: String) -> ProviderType
Parses ProviderType from its json string.
pub fn provider_type_to_json(it: ProviderType) -> json.Json
Encodes ProviderType as a json string.
pub fn provider_type_to_string(it: ProviderType) -> String
The json string of ProviderType.
pub fn render_condition_decoder() -> decode.Decoder(
RenderCondition,
)
Decodes RenderCondition from json.
pub fn render_condition_to_json(it: RenderCondition) -> json.Json
Encodes RenderCondition as json.
pub fn rich_preview_slug_decoder() -> decode.Decoder(
RichPreviewSlug,
)
Decodes RichPreviewSlug from json.
pub fn rich_preview_slug_to_json(
it: RichPreviewSlug,
) -> json.Json
Encodes RichPreviewSlug as json.
pub fn rich_previews_decoder() -> decode.Decoder(RichPreviews)
Decodes RichPreviews from json.
pub fn rich_previews_to_json(it: RichPreviews) -> json.Json
Encodes RichPreviews as json.
pub fn search_settings_decoder() -> decode.Decoder(SearchSettings)
Decodes SearchSettings from json.
pub fn search_settings_to_json(it: SearchSettings) -> json.Json
Encodes SearchSettings as json.
pub fn settings_decoder() -> decode.Decoder(Settings)
Decodes Settings from json.
pub fn shortcut_type_decoder() -> decode.Decoder(ShortcutType)
Decodes ShortcutType from a json string.
pub fn shortcut_type_from_string(string: String) -> ShortcutType
Parses ShortcutType from its json string.
pub fn shortcut_type_to_json(it: ShortcutType) -> json.Json
Encodes ShortcutType as a json string.
pub fn shortcut_type_to_string(it: ShortcutType) -> String
The json string of ShortcutType.
pub fn siws_links_decoder() -> decode.Decoder(SiwsLinks)
Decodes SiwsLinks from json.
pub fn slackbot_metadata_decoder() -> decode.Decoder(
SlackbotMetadata,
)
Decodes SlackbotMetadata from json.
pub fn slackbot_metadata_to_json(
it: SlackbotMetadata,
) -> json.Json
Encodes SlackbotMetadata as json.
pub fn slash_command(
command command: String,
description description: String,
) -> ManifestSlashCommand
A slash command entry for features.slash_commands.
pub fn suggested_prompt_decoder() -> decode.Decoder(
SuggestedPrompt,
)
Decodes SuggestedPrompt from json.
pub fn suggested_prompt_to_json(it: SuggestedPrompt) -> json.Json
Encodes SuggestedPrompt as json.
pub fn suggested_trigger_decoder() -> decode.Decoder(
SuggestedTrigger,
)
Decodes SuggestedTrigger from json.
pub fn suggested_trigger_to_json(
it: SuggestedTrigger,
) -> json.Json
Encodes SuggestedTrigger as json.
pub fn suggested_triggers_decoder() -> decode.Decoder(
SuggestedTriggers,
)
Decodes SuggestedTriggers from json. It tries each alternative in order.
pub fn suggested_triggers_to_json(
it: SuggestedTriggers,
) -> json.Json
Encodes SuggestedTriggers as json.
pub fn token_url_config_decoder() -> decode.Decoder(
TokenUrlConfig,
)
Decodes TokenUrlConfig from json.
pub fn token_url_config_to_json(it: TokenUrlConfig) -> json.Json
Encodes TokenUrlConfig as json.
pub fn view_action_decoder() -> decode.Decoder(ViewAction)
Decodes ViewAction from json.
pub fn view_action_to_json(it: ViewAction) -> json.Json
Encodes ViewAction as json.
pub fn workflow_step_decoder() -> decode.Decoder(WorkflowStep)
Decodes WorkflowStep from json.
pub fn workflow_step_to_json(it: WorkflowStep) -> json.Json
Encodes WorkflowStep as json.
pub fn workflow_step_type_decoder() -> decode.Decoder(
WorkflowStepType,
)
Decodes WorkflowStepType from a json string.
pub fn workflow_step_type_from_string(
string: String,
) -> WorkflowStepType
Parses WorkflowStepType from its json string.
pub fn workflow_step_type_to_json(
it: WorkflowStepType,
) -> json.Json
Encodes WorkflowStepType as a json string.
pub fn workflow_step_type_to_string(
it: WorkflowStepType,
) -> String
The json string of WorkflowStepType.