Skip to content

manifests: fields missing from Manifest compared to the app manifest reference #1588

Description

@yuya-takeyama

Description

Compared with the app manifest reference, the following keys have no corresponding field in Manifest (manifests.go, master 4b9cec9 / v0.29.0). Because ExportManifestContext decodes into Manifest and UpdateManifestContext sends it back, these keys are not carried through an export → update round trip.

features

Key Type in the reference
features.agent_view object: agent_description (required, max 300 chars), suggested_prompts[]{title, message}, actions[]{name, description}
features.assistant_view object: assistant_description (required), suggested_prompts[]{title, message}
features.rich_previews object: is_active bool, entity_types []string
features.search object: search_function_callback_id (required), search_filters_function_callback_id, slackbot_metadata{description, examples[], example_query}
features.unfurl_domains []string (max 5)

oauth_config

Key Type in the reference
oauth_config.pkce_enabled bool
oauth_config.token_management_enabled bool

settings

Key Type in the reference
settings.event_subscriptions.metadata_subscriptions []{app_id, event_type}
settings.incoming_webhooks object: incoming_webhooks_enabled bool
settings.token_rotation_enabled bool
settings.is_hosted bool
settings.is_mcp_enabled bool
settings.siws_links object: initiate_uri string
settings.function_runtime string (remote / slack)

Top level

Key Type in the reference
app_directory object (Slack Marketplace listing fields)
functions map keyed by callback_id (input_parameters / output_parameters differ between manifest v1 and v2)
workflows map keyed by callback_id
datastores object
outgoing_domains []string (max 10)
types object (max 50)
metadata_events object or reference form
external_auth_providers object (CUSTOM / SLACK_PROVIDED)
compliance object: fedramp_authorization, dod_srg_ilx, itar_compliant
mcp_servers map keyed by server key (max 20)

For reference, Slack's own Go types for the manifest are in the Slack CLI (slackapi/slack-cli, internal/shared/types/app_manifest.go), and the Node SDK types are in slackapi/node-slack-sdk, packages/web-api/src/types/request/manifest.ts.

I plan to send a PR for features.agent_view and features.assistant_view.

(Optional) Slack's documentation

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions