slackapi / slackapi/java-slack-sdk
Add documentation for using the `SlackSignature` verifier from `app_backend` with specific Java requirements
Open
Nobody has claimed this yet.
docs
project:bolt
- Dominant language
- Java
- Stars
- 602
- Forks
- 232
- Avg merge
- 4d 9h
- Merged PRs (30d)
- 7
Description
- There seems to be no documentation about how to verify requests using the Java SDK. The only documentation found is the general info.
- When trying to verify a Slack incoming request, we need to pass in the full URL-encoded body. However, the Java standard library does not URL-encode the aterix character
*, thus resulting in an automatic failure if present in the payload. A notice or warning about how to correctly handle that would save some time.
The page URLs
No pages - to add in a new example or page.
Requirements
- Indicate that the
app_backendmodule contains a helper to validate incoming Slack requests - For Spring use, indicate that receiving a
ContentCachingRequestWrapperallows for reading a raw request body, else it will be automatically deserialized. - When calling the
SlackSignature.Verifiermethod, indicate that the payload must be url-encoded, including for asterix, and that there may be a need to encode the*character manually (to%2A).
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the app_backend module and the SlackSignature.Verifier entry point, then review how Spring uses ContentCachingRequestWrapper for the raw request body. Add a new example or page covering Java request verification, URL-encoding the full payload including manually encoding * as %2A, and the stated Spring behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java, spring
- Domain
- documentation
- Issue type
- Documentation
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 38/100