Skip to content

feat: add agents.sessions.setStatus and agents.sessions.rename - #1633

Merged
zimeg merged 1 commit into
mainfrom
clack/agents-sessions-methods
Aug 22, 2026
Merged

feat: add agents.sessions.setStatus and agents.sessions.rename#1633
zimeg merged 1 commit into
mainfrom
clack/agents-sessions-methods

Conversation

@zimeg

@zimegzimeg commented Aug 20, 2026

Copy link
Copy Markdown
Member

Adds the agents.sessions.* Web API methods — the agent-sessions successors to assistant.threads.setStatus / assistant.threads.setTitle.

Documentation

Methods

  • agents.sessions.setStatuschannel_id (required), status (required), optional thread_ts, title, initiator_user_id, icon_emoji, icon_url, username
  • agents.sessions.renamechannel_id (required), title (required), optional thread_ts

Bot token scope: chat:write. Rate limit: Tier 3 (both).

What's included

  • Request classes: AgentsSessionsSetStatusRequest, AgentsSessionsRenameRequest
  • Response classes: AgentsSessionsSetStatusResponse, AgentsSessionsRenameResponse
  • Sync + async client method declarations and implementations
  • RequestFormBuilder form serialization
  • Rate-limit tier registration (MethodsRateLimits + rate_limit_tiers.json)
  • Response-sample dump (MethodsResponseDumpTest.agents_sessions()) for downstream type generation
  • Remote API tests (test_with_remote_apis/methods/agents_sessions_Test) — assume-gated on a bot token, so they skip cleanly without credentials

Mirrors the Python SDK implementation (slackapi/python-slack-sdk#1942). Draft/experimental.

@codecov

codecovBot commented Aug 20, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 8.00000% with 23 lines in your changes missing coverage. Please review.
✅ Project coverage is 72.87%. Comparing base (0bcc88f) to head (3aaade9).
✅ All tests successful. No failed tests found.

Files with missing linesPatch %Lines
...java/com/slack/api/methods/RequestFormBuilder.java0.00%15 Missing ⚠️
...slack/api/methods/impl/AsyncMethodsClientImpl.java0.00%4 Missing ⚠️
.../com/slack/api/methods/impl/MethodsClientImpl.java0.00%4 Missing ⚠️
Additional details and impacted files
@@ Coverage Diff @@## main #1633 +/- ##
============================================
- Coverage 72.99% 72.87% -0.12% + Complexity 4523 4522 -1 
============================================
Files 479 479 Lines 14365 14390 +25 Branches 1503 1503 ============================================
+ Hits 10486 10487 +1 - Misses 2989 3013 +24 
Partials 890 890 
FlagCoverage Δ
jdk-1472.87% <8.00%> (-0.12%)⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

@zimeg
zimegforce-pushed the clack/agents-sessions-methods branch 7 times, most recently from 082dff4 to 3ee8e00CompareAugust 20, 2026 13:22
@zimeg
zimegforce-pushed the clack/agents-sessions-methods branch from 3ee8e00 to 580e947CompareAugust 20, 2026 16:24
zimeg added a commit to slackapi/node-slack-sdk that referenced this pull request Aug 20, 2026
Mirror the Python SDK (slackapi/python-slack-sdk#1942) for the two
agents.sessions methods:
- agents.sessions.rename Rename an agent session.
- agents.sessions.setStatus Set an agent session's lifecycle status,
creating the session if needed.
Adds the client.agents.sessions.{rename,setStatus} bindings, the request
argument types, and the response types.
The response types are generated from the java-slack-sdk API sample logs
via scripts/generate-web-api-types.sh; the samples land in
slackapi/java-slack-sdk#1633, so the generator must be re-run against
java-slack-sdk main once that ships to pick up the final response shape.
Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
@zimeg
zimegforce-pushed the clack/agents-sessions-methods branch 2 times, most recently from 4cff141 to 3918e12CompareAugust 20, 2026 16:33
@zimegzimeg added enhancement M-T: A feature request for new functionality semver:minor labels Aug 20, 2026
@zimegzimeg self-assigned this Aug 20, 2026
zimeg added a commit to slack-samples/bolt-java-examples that referenced this pull request Aug 20, 2026
Mirror the Python examples (slackapi/bolt-python-examples) for the two
agents.sessions methods, nested under agents/sessions/ to match:
- agents.sessions.rename Rename an agent session.
- agents.sessions.setStatus Set an agent session's lifecycle status,
creating the session if needed.
Adds the two example classes, a per-family manifest (agent_view + the
agent bot events), and an "agents" section in the methods README.
Requires the agents.sessions methods in slack-api-client (adds via
slackapi/java-slack-sdk#1633); the example pom stays pinned to the
released SDK until that ships.
Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
zimeg added a commit to slack-samples/bolt-java-examples that referenced this pull request Aug 20, 2026
Mirror the Python examples (slackapi/bolt-python-examples) for the two
agents.sessions methods, nested under agents/sessions/ to match:
- agents.sessions.rename Rename an agent session.
- agents.sessions.setStatus Set an agent session's lifecycle status,
creating the session if needed.
Adds the two example classes, a per-family manifest (agent_view + the
agent bot events), and an "agents" section in the methods README.
Requires the agents.sessions methods in slack-api-client (adds via
slackapi/java-slack-sdk#1633); the example pom stays pinned to the
released SDK until that ships.
Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
zimeg added a commit to slack-samples/bolt-java-examples that referenced this pull request Aug 20, 2026
Mirror the Python examples (slackapi/bolt-python-examples) for the two
agents.sessions methods, nested under agents/sessions/ to match:
- agents.sessions.rename Rename an agent session.
- agents.sessions.setStatus Set an agent session's lifecycle status,
creating the session if needed.
Adds the two example classes, a per-family manifest (agent_view + the
agent bot events), and an "agents" section in the methods README.
Requires the agents.sessions methods in slack-api-client (adds via
slackapi/java-slack-sdk#1633); the example pom stays pinned to the
released SDK until that ships.
Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
zimeg added a commit to slack-samples/bolt-java-examples that referenced this pull request Aug 20, 2026
Mirror the Python examples (slackapi/bolt-python-examples) for the two
agents.sessions methods, nested under agents/sessions/ to match:
- agents.sessions.rename Rename an agent session.
- agents.sessions.setStatus Set an agent session's lifecycle status,
creating the session if needed.
Adds the two example classes, a per-family manifest (agent_view + the
agent bot events), and an "agents" section in the methods README.
Requires the agents.sessions methods in slack-api-client (adds via
slackapi/java-slack-sdk#1633); the example pom stays pinned to the
released SDK until that ships.
Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
Base automatically changed from api to mainAugust 21, 2026 22:07
Add the agents.sessions.* Web API methods (successors to
assistant.threads.setStatus/setTitle): request/response classes, sync + async
client methods, form builder, Tier3 rate-limit metadata, a response-sample
dump, and remote API tests. Arguments follow the method reference; scope
chat:write.
Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
@zimeg
zimegforce-pushed the clack/agents-sessions-methods branch from 3918e12 to 3aaade9CompareAugust 21, 2026 23:48
@zimegzimeg added the project:slack-api-client project:slack-api-client label Aug 21, 2026
@zimegzimeg added this to the 1.50.1 milestone Aug 21, 2026
@zimeg
zimeg marked this pull request as ready for review August 21, 2026 23:57
@zimeg
zimeg requested a review from a team as a code ownerAugust 21, 2026 23:57
@zimeg

Copy link
Copy Markdown
MemberAuthor

Self-review notes (author) — for a reviewer's context

Sharing what I checked so a reviewer has the full picture. This is a self-review, not an approval.

Scope

  • Rebased onto current main so the diff is exactly the agent-sessions work (16 files) — request/response classes, sync + async client declarations + impls, RequestFormBuilder serialization, Methods constants, rate-limit tier registration (MethodsRateLimits + rate_limit_tiers.json), the MethodsResponseDumpTest.agents_sessions() dump, the remote test, and the two committed JSON samples. Nothing unrelated.

Correctness

Testing

  • mvn -pl slack-api-client -am compile — BUILD SUCCESS against current main.
  • The remote test (test_with_remote_apis/methods/agents_sessions_Test) was run live against a test workspace: chat.postMessagesetStatus(processing, title)renamesetStatus(closed), all ok: true. The response classes were shaped from that live response (Gson strict-mode surfaced status / agent_status / title), and the committed json-logs/samples/api/agents.sessions.*.json are what the node-slack-sdk type generator consumes.

Docs: agents.sessions.setStatus, agents.sessions.rename.

@zimeg
zimeg merged commit b7562e3 into mainAug 22, 2026
7 of 10 checks passed
@zimeg
zimeg deleted the clack/agents-sessions-methods branch August 22, 2026 00:00
zimeg added a commit to slackapi/node-slack-sdk that referenced this pull request Aug 22, 2026
Mirror the Python SDK (slackapi/python-slack-sdk#1942) for the two
agents.sessions methods:
- agents.sessions.rename Rename an agent session.
- agents.sessions.setStatus Set an agent session's lifecycle status,
creating the session if needed.
Adds the client.agents.sessions.{rename,setStatus} bindings, the request
argument types, and the response types.
The response types are generated from the java-slack-sdk API sample logs
via scripts/generate-web-api-types.sh; the samples land in
slackapi/java-slack-sdk#1633, so the generator must be re-run against
java-slack-sdk main once that ships to pick up the final response shape.
Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancementM-T: A feature request for new functionalityproject:slack-api-clientproject:slack-api-clientsemver:minor

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@zimeg