Skip to content

Add lossless app manifest compatibility APIs #1600

Description

@JaiminBrahmbhatt

Description

The SDK already supports apps.manifest.create, apps.manifest.update, apps.manifest.export, and apps.manifest.validate, but its typed manifest surface cannot preserve fields added to Slack's manifest schema after the corresponding Go structs. The create response and optional request arguments are also incomplete.

Add a backward-compatible surface that:

  • preserves every existing typed method signature and behavior;
  • exposes the documented apps.manifest.create app ID, credentials, and OAuth authorization URL, with guidance for handling returned secrets;
  • supports the optional create team_id through an additive option;
  • adds json.RawMessage variants for create, update, export, and validate without re-marshaling manifest bytes;
  • supports the optional validate app_id;
  • retains per-call configuration tokens with the existing OptionConfigToken fallback; and
  • returns structured manifest validation details alongside standard Slack API errors.

Synthetic tests will cover exact raw JSON preservation, unknown nested fields, optional argument omission and presence, the complete create response, invalid raw inputs, structured errors, and compatibility of the existing typed methods.

This change does not add new Slack endpoints or replace the typed manifest API.

I plan to submit the implementation.

Slack documentation

Activity

  1. added a commit that references this issue on Oct 5, 2026
    81b481f
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