slackapi / slackapi/slack-cli

feat: support icon upload for non-hosted apps (Bolt Framework apps)

Open
#438 1 comment 4 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement semver:minor
Dominant language
Go
Stars
305
Forks
46
Avg merge
1d 11h
Merged PRs (30d)
23

Description

Description

The apps.hosted.icon endpoint currently rejects non-hosted app IDs, which means traditional apps created via apps.manifest.create (e.g., Bolt apps) can't set their app icon programmatically.

There's already a TODO in internal/pkg/apps/install.go:525 acknowledging this:

// TODO: Currently, cannot update the icon if app is not hosted.

…followed by commented-out code that would handle icon upload for non-hosted apps, identical to how it works for hosted deploys (lines 220-233).

It would be great to extend apps.hosted.icon (or introduce a new endpoint) to accept non-hosted app IDs so all Slack apps can set their icon programmatically. This is also related to slackapi/manifest-schema#42 where Slack staff mentioned a public API for this is in the works.

cc @mwbrooks

Requirements
  • I've read and understood the Contributing guidelines and have done my best effort to follow them.
  • I've read and agree to the Code of Conduct.
  • I've searched for any related issues and avoided creating a duplicate issue.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start in internal/pkg/apps/install.go at the TODO around line 525 and compare it with the commented icon-upload logic around lines 220-233. First confirm whether a public endpoint now supports icon uploads for non-hosted app IDs; done would mean the chosen API path can set icons for traditional and hosted apps, with coverage for the supported behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
api, cli
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.